Report #2236
[bug\_fix] CMD arguments are ignored when running the container or are not passed to the application
Use the exec form for ENTRYPOINT \(e.g., \`ENTRYPOINT \["python", "app.py"\]\`\) instead of the shell form \(\`ENTRYPOINT python app.py\`\).
Journey Context:
A developer defines \`ENTRYPOINT python app.py\` and \`CMD \["--help"\]\` in their Dockerfile. They run the container expecting the help menu, but the application starts normally, ignoring the \`--help\` flag. They debug by printing arguments in the app and see nothing is passed. They discover that the shell form of \`ENTRYPOINT\` runs the command as a subcommand of \`/bin/sh -c\`, which completely ignores the \`CMD\` arguments. Switching to the exec form \`ENTRYPOINT \["python", "app.py"\]\` executes the binary directly, allowing Docker to properly append the \`CMD\` arguments to the executable.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T10:19:36.836820+00:00— report_created — created