From dc8581f545495aee605d7bdae1e9090a3aca8fb6 Mon Sep 17 00:00:00 2001 From: Julien Froidefond Date: Fri, 20 Feb 2026 13:46:42 +0100 Subject: [PATCH] Update Dockerfile to add a new startup script and adjust permissions for entrypoint and startup scripts, simplifying the command execution process. --- Dockerfile | 5 +++-- docker-start.sh | 15 +++++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 docker-start.sh diff --git a/Dockerfile b/Dockerfile index b05f530..04342ed 100644 --- a/Dockerfile +++ b/Dockerfile @@ -44,8 +44,9 @@ ENV PORT=3000 ENV HOSTNAME="0.0.0.0" COPY docker-entrypoint.sh /entrypoint.sh +COPY docker-start.sh /start.sh RUN apt-get update -y && apt-get install -y gosu && rm -rf /var/lib/apt/lists/* \ - && chmod +x /entrypoint.sh + && chmod +x /entrypoint.sh /start.sh ENTRYPOINT ["/entrypoint.sh"] -CMD ["sh", "-c", "npx prisma migrate deploy && node server.js"] +CMD ["/start.sh"] diff --git a/docker-start.sh b/docker-start.sh new file mode 100644 index 0000000..d3abf52 --- /dev/null +++ b/docker-start.sh @@ -0,0 +1,15 @@ +#!/bin/sh +set -e + +# Run migrations; if P3005 (schema not empty, no migration history), baseline then retry +if ! npx prisma migrate deploy 2>/dev/null; then + echo "Migration failed, attempting baseline (P3005 fix)..." + for dir in /app/prisma/migrations/*/; do + [ -d "$dir" ] || continue + name=$(basename "$dir") + npx prisma migrate resolve --applied "$name" 2>/dev/null || true + done + npx prisma migrate deploy +fi + +exec node server.js