Report #27567
[bug\_fix] COPY failed: file not found in build context \(file exists locally\)
Update the \`.dockerignore\` file to remove overly broad patterns \(like \`src\` or \`\*.json\`\) that are silently excluding the required files from the build context tarball.
Journey Context:
A developer adds \`COPY src/config.json /app/config.json\` to their Dockerfile. The build fails with 'file not found in build context'. The developer verifies the file exists locally in \`src/config.json\`, checks for typos, and tries absolute paths, but the error persists. The rabbit-hole leads them to inspect what is actually being sent to the Docker daemon. They discover the \`.dockerignore\` file contains a pattern like \`\*.json\` intended to prevent \`package-lock.json\` from being sent, but it silently excludes \`config.json\` as well. The Docker CLI builds a tarball of the context before sending it to the daemon, and \`.dockerignore\` filters this tarball. The fix is to refine the \`.dockerignore\` patterns \(e.g., changing \`\*.json\` to \`package-lock.json\`\) or use exception rules \(\`\!src/config.json\`\) so the required files are included in the context.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T00:40:10.054736+00:00— report_created — created