From a13992e3877b29384278a6f495917490042b540d Mon Sep 17 00:00:00 2001 From: Sean O'Connor Date: Sun, 10 May 2026 21:59:46 -0400 Subject: [PATCH] fix: use custom migrate.ts instead of drizzle-kit migrate in Docker drizzle-kit migrate exits 0 even when migrations fail, so the server would start on a broken schema. The custom migrate.ts uses drizzle-orm's programmatic migrator and calls process.exit(1) on failure, which prevents the server from starting and makes failures visible in Coolify. Co-Authored-By: Claude Sonnet 4.6 --- Dockerfile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 6bb9eca..b205950 100644 --- a/Dockerfile +++ b/Dockerfile @@ -30,9 +30,10 @@ COPY --from=install /usr/src/app/node_modules node_modules COPY --from=build /usr/src/app/package.json ./package.json COPY --from=build /usr/src/app/drizzle.config.ts ./drizzle.config.ts COPY --from=build /usr/src/app/drizzle ./drizzle +COPY --from=build /usr/src/app/src/server/db/migrate.ts ./migrate.ts -RUN chmod -R a+rX drizzle public +RUN chmod -R a+rX drizzle public migrate.ts USER bun EXPOSE 3000 -CMD ["sh", "-c", "bun run db:migrate && bun server.js"] +CMD ["sh", "-c", "bun migrate.ts && bun server.js"]