Report #15017
[bug\_fix] exec user process caused: no such file or directory
Convert the entrypoint or shell script from CRLF \(Windows\) to LF \(Unix\) line endings using \`dos2unix\` or Git core.autocrlf settings, and ensure the script starts with a valid shebang like \`\#\!/bin/sh\`.
Journey Context:
A developer writes a custom entrypoint script on a Windows machine, builds the Docker image successfully, but the container crashes immediately on startup with a cryptic 'no such file or directory' error. They waste time checking if bash/sh is installed in the Alpine image, adding \`RUN apk add bash\`, but it still fails. The root cause is Windows CRLF line endings \(\`\\r\\n\`\). The Linux kernel reads the shebang as \`\#\!/bin/sh\\r\`, looks for a binary named \`sh\\r\` which doesn't exist, and fails. Converting to LF strips the hidden carriage return, allowing the OS to parse the shebang and execute the interpreter correctly.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T22:55:27.395749+00:00— report_created — created