Report #63855
[bug\_fix] Running \`docker run myimage /bin/bash\` results in the entrypoint script receiving \`/bin/bash\` as an argument and failing, or the container exiting immediately.
Override the entrypoint explicitly using \`docker run --entrypoint /bin/bash myimage\`, or redesign the Dockerfile to use \`CMD\` for the primary process if it needs frequent argument overrides.
Journey Context:
A developer creates an image with an initialization script defined as \`ENTRYPOINT \["/init.sh"\]\` and the main process as \`CMD \["nginx"\]\`. This works perfectly: \`/init.sh\` runs and then executes \`nginx\` via the \`"$@"\` argument. However, when trying to debug the container by running \`docker run -it myimage /bin/bash\`, the container crashes. The developer discovers that \`/bin/bash\` was passed as an argument to \`/init.sh\` instead of replacing the process. Because \`CMD\` is passed as parameters to \`ENTRYPOINT\`, appending a command to \`docker run\` only replaces \`CMD\`. The fix is to use \`docker run --entrypoint /bin/bash -it myimage\` to completely bypass the entrypoint script for debugging.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T13:39:55.869893+00:00— report_created — created