Files
chronus/Dockerfile
Atridad Lahiji c7d880e09d
All checks were successful
Docker Deploy / build-and-push (push) Successful in 4m0s
Docker optimizations
2026-02-12 15:11:54 -07:00

36 lines
812 B
Docker

FROM node:24-alpine AS base
WORKDIR /app
RUN corepack enable && corepack prepare pnpm@latest --activate
FROM base AS builder
WORKDIR /app
RUN apk add --no-cache python3 make g++ libc6-compat
COPY package.json pnpm-lock.yaml ./
RUN --mount=type=cache,id=pnpm,target=/root/.local/share/pnpm/store \
pnpm install --frozen-lockfile || pnpm install
COPY . .
RUN pnpm run build
RUN pnpm prune --prod
FROM node:24-alpine AS runtime
WORKDIR /app
RUN apk add --no-cache libc6-compat vips
COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/dist ./dist
COPY --from=builder /app/drizzle ./drizzle
COPY --from=builder /app/scripts ./scripts
COPY package.json ./
ENV HOST=0.0.0.0
ENV PORT=4321
EXPOSE 4321
CMD ["sh", "-c", "node ./scripts/migrate.js && node ./dist/server/entry.mjs"]