Report #1852
[bug\_fix] Container ignores docker run arguments and CMD defaults, or docker stop times out because SIGTERM is not received.
Use exec form ENTRYPOINT \["executable", "arg"\] instead of shell form. If shell features are required, use an entrypoint script that ends with exec "$@". Combine with CMD \["default"\] in exec form so runtime arguments override CMD while still being passed to ENTRYPOINT.
Journey Context:
A Dockerfile uses ENTRYPOINT python app.py. Running docker run myimage --help does not pass --help, and docker stop takes ten seconds and then kills the container. Inspecting with docker exec ps aux shows /bin/sh -c "python app.py" as PID 1 instead of python. Switching to ENTRYPOINT \["python", "app.py"\] and CMD \["--port", "8080"\] makes command-line arguments append correctly and gives the python process PID 1 so it receives Unix signals. The shell form wraps the command in /bin/sh -c, which ignores CMD/runtime args and does not forward signals.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T08:50:47.292353+00:00— report_created — created