- Rewrite 0000_init with IF NOT EXISTS on all tables, indexes and enums; wrap FK constraints in DO/EXCEPTION blocks so re-runs never fail - Add missing suggestions table to init migration - Add migration 0002 to create message_logs table (IF NOT EXISTS) - Add entrypoint.sh: runs prisma migrate deploy before starting the server - Update Dockerfile to copy entrypoint.sh and use it as CMD - Add prisma:migrate script to package.json for manual runs Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
20 lines
503 B
Docker
20 lines
503 B
Docker
FROM node:22-alpine AS builder
|
|
WORKDIR /app
|
|
COPY package*.json ./
|
|
RUN npm install
|
|
COPY . .
|
|
RUN npx prisma generate
|
|
RUN npm run build
|
|
|
|
FROM node:22-alpine AS runner
|
|
WORKDIR /app
|
|
COPY --from=builder /app/dist ./dist
|
|
COPY --from=builder /app/node_modules ./node_modules
|
|
COPY --from=builder /app/package.json ./
|
|
COPY --from=builder /app/prisma ./prisma
|
|
COPY --from=builder /app/prisma.config.js ./
|
|
COPY --from=builder /app/entrypoint.sh ./
|
|
RUN chmod +x entrypoint.sh
|
|
EXPOSE 3001
|
|
CMD ["sh", "entrypoint.sh"]
|