Docker
2 focused explainers for readers who want the useful answer, a clear example, and a practical next step.
Docker multi-stage builds for Node.js: smaller without missing runtime files
A smaller image is useful only when native modules, certificates, migrations, and source maps required at runtime still arrive in the final.
Docker BuildKit cache in GitHub Actions: stop rebuilding every layer
Remote BuildKit cache can reduce CI time, but only if Dockerfile ordering and cache ownership match the repository.