Report #16578
[bug\_fix] Arguments passed via CMD or docker run are completely ignored by the container, causing it to use default settings or crash.
Change the ENTRYPOINT from shell form \(ENTRYPOINT /app/start.sh\) to exec form \(ENTRYPOINT \["/app/start.sh"\]\) so that CMD is properly passed as arguments to the entrypoint script.
Journey Context:
A developer creates an image for a generic worker script. They define ENTRYPOINT /app/run.sh and CMD \["--workers", "4"\]. When they run docker run myimage --workers 8, the application starts with 4 workers instead of 8. They add logging to run.sh and see that $1 is empty. They discover that using the shell form of ENTRYPOINT causes Docker to invoke /bin/sh -c "/app/run.sh", which completely discards the CMD arguments. By changing the Dockerfile to use the exec form ENTRYPOINT \["/app/run.sh"\], Docker executes the script directly and passes the CMD arguments as parameters to it, allowing run.sh to correctly parse $1 and $2.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T02:57:14.371799+00:00— report_created — created