Files
Checkmate/server/Dockerfile
T

27 lines
728 B
Docker
Raw Normal View History

2025-12-10 17:43:35 +00:00
# syntax=docker/dockerfile:1.6
ARG NODE_VERSION=20
## Build stage (with dev deps, native to build platform)
2025-12-16 23:51:34 +00:00
FROM --platform=$BUILDPLATFORM node:${NODE_VERSION}-bookworm-slim AS build
2025-12-10 17:43:35 +00:00
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
## Production deps (native to target platform)
2025-12-16 23:51:34 +00:00
FROM --platform=$TARGETPLATFORM node:${NODE_VERSION}-bookworm-slim AS deps
2025-12-10 17:43:35 +00:00
WORKDIR /app
COPY package*.json ./
2025-12-16 23:51:34 +00:00
RUN npm ci --omit=dev
2025-12-10 17:43:35 +00:00
2025-12-10 17:47:02 +00:00
## Runtime image (target platform)
2025-12-16 23:51:34 +00:00
FROM --platform=$TARGETPLATFORM node:${NODE_VERSION}-bookworm-slim
2025-12-10 17:43:35 +00:00
ENV NODE_ENV=production
WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY package*.json ./
COPY --from=build /app/dist ./dist
EXPOSE 52345
CMD ["node", "dist/index.js"]