.dockerignore excludes deploy/ entirely. The entrypoint script lived
there, so the COPY in Stage 3 failed with "not found". Move it to the
project root (alongside Dockerfile) where the build context includes it.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>