fix: resolve CRLF line ending issue for Windows users

Windows Git converts LF to CRLF by default, causing entrypoint.sh
to fail inside Alpine Linux containers with 'no such file or directory'.

Changes:
- Dockerfile: added sed to strip carriage returns from entrypoint.sh
- .gitattributes: enforce LF line endings for all shell scripts

Fixes #289
This commit is contained in:
Subhranil Sarkar
2026-04-13 21:49:08 +05:30
parent 65c8fc7f5e
commit 96e9087f41
2 changed files with 7 additions and 1 deletions
+4
View File
@@ -0,0 +1,4 @@
# Enforce Unix line endings for shell scripts
*.sh text eol=lf
entrypoint.sh text eol=lf
identifier.sh text eol=lf
+3 -1
View File
@@ -52,7 +52,9 @@ RUN apk --no-cache upgrade && \
# Copy the compiled binary and entrypoint (--chmod avoids extra RUN chmod layers)
COPY --from=builder --chmod=755 /app/target/release/oxicloud /usr/local/bin/
COPY --chmod=755 entrypoint.sh /usr/local/bin/entrypoint.sh
COPY entrypoint.sh /usr/local/bin/entrypoint.sh
RUN sed -i 's/\r//' /usr/local/bin/entrypoint.sh && \
chmod 755 /usr/local/bin/entrypoint.sh
# Copy processed static files (bundled/minified by build.rs in release)
COPY --from=builder --chown=oxicloud:oxicloud /app/static-dist /app/static