Report #101004
[bug\_fix] BuildKit COPY fails with 'failed to compute cache key: ... not found' or 'COPY failed: file not found in build context or excluded by .dockerignore'
Ensure the COPY source exists relative to the build-context root, run the build from the correct context directory, generate any build artifact before docker build or in an earlier stage, and whitelist required files in .dockerignore when using broad exclusion patterns.
Journey Context:
A developer clones a Node project and runs \`npm run build\` so \`dist/\` appears locally, then \`docker build -t app .\`. BuildKit stops at \`COPY dist/ /app/dist/\` with \`failed to compute cache key: "/dist" not found\`. The file is right there on disk, so they check the Dockerfile path, then \`ls -la\`, and finally \`cat .dockerignore\`. The project uses \`\*\` to keep the context small but forgot \`\!dist/\`, so Docker strips the entire directory before sending the context. After adding \`\!dist/\` \(and \`\!package.json\`, etc.\) the build succeeds. The root cause is that COPY/ADD can only see files inside the build context, and .dockerignore removes files before the context reaches the builder.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-06T04:49:35.896658+00:00— report_created — created