2026-04-18 00:33:27 +01:00
|
|
|
FROM node:22-alpine
|
|
|
|
|
|
|
|
|
|
WORKDIR /app
|
|
|
|
|
|
|
|
|
|
# Enable pnpm
|
|
|
|
|
RUN corepack enable && corepack prepare pnpm@latest --activate
|
|
|
|
|
|
|
|
|
|
# Install deps
|
|
|
|
|
COPY package.json pnpm-lock.yaml ./
|
|
|
|
|
RUN pnpm install --frozen-lockfile
|
|
|
|
|
|
|
|
|
|
# Copy source
|
|
|
|
|
COPY . .
|
|
|
|
|
|
2026-04-19 20:04:51 +01:00
|
|
|
# Required by prisma generate during image build
|
2026-04-19 20:12:46 +01:00
|
|
|
echo "DATABASE_URL=postgres://tvone:tvone_password@db:5432/tvone" > .env
|
|
|
|
|
echo "PORT=3000" >> .env
|
|
|
|
|
echo "NODE_ENV=production" >> .env
|
2026-04-19 20:04:51 +01:00
|
|
|
|
2026-04-18 00:33:27 +01:00
|
|
|
# Build NestJS
|
|
|
|
|
RUN pnpm build
|
|
|
|
|
|
|
|
|
|
EXPOSE 3000
|
|
|
|
|
|
|
|
|
|
CMD ["node", "dist/main"]
|