Report #6772
[bug\_fix] COPY failed: file not found in build context: stat \[filename\]: file does not exist
Remove the pattern matching the required file from the \`.dockerignore\` file, or ensure the Dockerfile is referencing the correct path relative to the build context root.
Journey Context:
A developer sets up a CI pipeline. The build fails with 'file not found in build context' for \`package.json\`. They verify the file exists in the repository and the \`COPY package.json ./\` line looks correct. They might try changing paths, using absolute paths \(which aren't allowed in COPY\), or checking git history. The rabbit hole is forgetting about the \`.dockerignore\` file. A previous developer \(or an auto-generator\) added a rule like \`\*.json\` to minimize the build context size, or \`\*\*/test\` which accidentally matched a required directory. The Docker daemon only sends files to the builder that are NOT in \`.dockerignore\`. If \`.dockerignore\` excludes it, it doesn't exist in the build context. Removing the aggressive rule fixes it because the file is now included in the context tarball sent to the daemon/BuildKit.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T00:51:47.184218+00:00— report_created — created