Docker optimizations
All checks were successful
Docker Deploy / build-and-push (push) Successful in 4m0s

This commit is contained in:
2026-02-12 15:11:54 -07:00
parent 4666bc42cf
commit c7d880e09d

View File

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