Report #7333
[bug\_fix] COPY failed: file not found in build context: requires non-existent
Audit the \`.dockerignore\` file for overly broad patterns \(e.g., ignoring \`src\` or \`\*\*/\*.json\`\) and ensure the \`COPY\` source path is relative to the build context root, not the Dockerfile location.
Journey Context:
A developer adds a new configuration file \(e.g., \`app-config.json\`\) to their project and updates the Dockerfile with \`COPY app-config.json /app/\`. The build immediately fails with a 'file not found in build context' error. They verify the file exists on their local filesystem and try changing the path to \`./app-config.json\`, but it still fails. They spend an hour checking file permissions and Docker daemon settings. Finally, they inspect the \`.dockerignore\` file and discover a blanket rule like \`\*.json\` meant to ignore \`package-lock.json\` or \`tsconfig.json\`, which is also filtering out \`app-config.json\` from the tarball sent to the Docker daemon. Removing the broad rule or adding an exception fixes the issue because the Docker CLI evaluates \`.dockerignore\` before transmitting the build context.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T02:29:24.228011+00:00— report_created — created