Repository navigation
Trim Docker context and reuse npm downloads - #11
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
The image build context includes files that are never copied into the runtime image, and npm dependency downloads are not backed by a BuildKit cache mount.
Changes
.dockerignoreentries for Git metadata, dependencies, generated Next.js output, environment files, logs, deployment files, and other build-irrelevant artifacts.npm ciin the builder stage.Why
The smaller context reduces runner-to-BuildKit transfer and filesystem I/O. The npm cache mount speeds repeated builds on the same BuildKit worker.
The workflow already uses the minimal Harbor registry cache mode.
Trade-offs
A fresh BuildKit worker still downloads dependencies once. No runtime image contents or application behavior changes.
Validation
git diff --check