Refactor Dockerfile and entrypoint.sh for improved backend build process

This commit is contained in:
Jose Selesan
2026-06-01 15:02:06 -03:00
parent 6738db8c60
commit 78df95e985
2 changed files with 10 additions and 15 deletions

View File

@@ -32,25 +32,19 @@ COPY packages/api-contract/package.json packages/api-contract/
RUN bun install
# =============================================================================
# Stage 4: Prisma Generate
# Stage 4: Build Backend (prisma generate + tsc)
# =============================================================================
FROM deps-backend AS prisma
FROM deps-backend AS build-backend
WORKDIR /app
ARG DATABASE_URL
ENV DATABASE_URL=${DATABASE_URL}
ENV DATABASE_URL=${DATABASE_URL:-postgresql://dummy:dummy@localhost:5432/dummy}
COPY apps/backend ./apps/backend
RUN bun --cwd apps/backend prisma:generate
# =============================================================================
# Stage 5: Build Backend
# =============================================================================
FROM prisma AS build-backend
WORKDIR /app
COPY packages ./packages
RUN bun --cwd apps/backend prisma:generate
RUN bun --cwd apps/backend build
# =============================================================================
# Stage 6: Runner - Production image
# Stage 5: Runner - Production image
# =============================================================================
FROM oven/bun:1.3.11 AS runner
WORKDIR /app
@@ -60,7 +54,7 @@ COPY --from=build-backend /app/node_modules ./node_modules
COPY --from=build-frontend /app/apps/frontend/dist ./apps/backend/public
COPY --from=build-backend /app/apps/backend ./apps/backend
COPY --from=build-backend /app/packages ./packages
COPY package.json ./
COPY package.json bun.lock ./
COPY entrypoint.sh /app/entrypoint.sh
RUN chmod +x /app/entrypoint.sh

View File

@@ -1,5 +1,6 @@
#!/bin/bash
#!/bin/sh
set -e
cd /app/apps/backend
bun --cwd /app/apps/backend prisma migrate deploy
bun --cwd /app/apps/backend prisma generate
bun prisma migrate deploy
bun prisma generate
bun run start