Report #102387
[bug\_fix] COPY failed: file not found in build context or excluded by .dockerignore
Ensure the file path in the COPY instruction is relative to the build context root \(where the docker build command runs\), not relative to the Dockerfile. Verify the file exists in the context and is not excluded by .dockerignore. Use \`docker build -f path/to/Dockerfile .\` with the dot pointing at the correct context directory.
Journey Context:
I ran \`docker build -f ./docker/Dockerfile .\` and it blew up on \`COPY ./config.yaml /app/config.yaml\` with 'file not found'. I triple-checked: config.yaml was right next to the Dockerfile in ./docker/. I wasted time trying absolute paths and re-arranging the Dockerfile. Then I re-read the error: the build context is '.', the repo root, not the docker/ folder. From the context root, ./docker/config.yaml exists, but ./config.yaml does not. The fix was either moving the Dockerfile to the repo root or changing the COPY to \`COPY ./docker/config.yaml /app/config.yaml\`. The same trap happens when .dockerignore ignores a file that COPY later references; the daemon silently excludes it and COPY fails. Always reason from the context root, not the Dockerfile location.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-09T04:47:02.575201+00:00— report_created — created