diff --git a/astro/Dockerfile b/astro/Dockerfile new file mode 100644 index 0000000..cf39586 --- /dev/null +++ b/astro/Dockerfile @@ -0,0 +1,27 @@ +FROM node:20-alpine AS base + +FROM base AS deps +WORKDIR /app +COPY package*.json ./ +COPY prisma ./prisma +RUN npm ci + +FROM base AS builder +WORKDIR /app +COPY --from=deps /app/node_modules ./node_modules +COPY . . +RUN npx prisma generate +RUN npm run build + +FROM base AS runner +WORKDIR /app +ENV NODE_ENV=production + +COPY --from=builder /app/dist ./dist +COPY --from=builder /app/node_modules ./node_modules +COPY --from=builder /app/package.json ./package.json +COPY --from=builder /app/prisma ./prisma + +EXPOSE 4321 + +CMD ["node", "./dist/server/entry.mjs"] diff --git a/background/Dockerfile b/background/Dockerfile new file mode 100644 index 0000000..8ea3034 --- /dev/null +++ b/background/Dockerfile @@ -0,0 +1,17 @@ +FROM oven/bun:1 AS base + +FROM base AS deps +WORKDIR /app +COPY package.json bun.lock ./ +COPY prisma ./prisma +RUN bun install --frozen-lockfile + +FROM base AS runner +WORKDIR /app +ENV NODE_ENV=production + +COPY --from=deps /app/node_modules ./node_modules +COPY . . +RUN bunx prisma generate + +CMD ["bun", "run", "src/index.ts"]