diff --git a/docker/api/Dockerfile b/docker/api/Dockerfile index fb46fbfa64d..a4dd9298212 100644 --- a/docker/api/Dockerfile +++ b/docker/api/Dockerfile @@ -1,5 +1,4 @@ -# bookworm was only released on 10-6-2023, so is a little too new. -FROM node:18-bullseye AS builder +FROM node:20-bookworm AS builder # global installs need root permissions, so have to happen before we switch to # the node user RUN npm i -g pnpm@8 @@ -34,7 +33,7 @@ RUN pnpm build:curriculum RUN pnpm build:server -FROM node:18-bullseye AS deps +FROM node:20-bookworm AS deps WORKDIR /home/node/build COPY --chown=node:node pnpm*.yaml . @@ -46,7 +45,7 @@ RUN npm i -g pnpm@8 RUN pnpm config set dedupe-peer-dependents false RUN pnpm -F=api-server -F=shared install --prod --ignore-scripts -FROM node:18-alpine +FROM node:20-alpine RUN npm i -g pm2@4 USER node WORKDIR /home/node/fcc diff --git a/docker/new-api/Dockerfile b/docker/new-api/Dockerfile index 5bfa67b1981..6c2cc4f87a2 100644 --- a/docker/new-api/Dockerfile +++ b/docker/new-api/Dockerfile @@ -1,5 +1,4 @@ -# bookworm was only released on 10-6-2023, so is a little too new. -FROM node:18-bullseye AS builder +FROM node:20-bookworm AS builder RUN apt-get update && apt-get install -y jq # global installs need root permissions, so have to happen before we switch to # the node user @@ -36,7 +35,7 @@ ENV SHOW_NEW_CURRICULUM=$SHOW_NEW_CURRICULUM RUN pnpm build:curriculum RUN pnpm -F=api build -FROM node:18-bullseye AS deps +FROM node:20-bookworm AS deps RUN apt-get update && apt-get install -y jq WORKDIR /home/node/build @@ -52,7 +51,7 @@ RUN pnpm config set dedupe-peer-dependents false RUN pnpm install --prod --ignore-scripts -F=shared -F=api --frozen-lockfile RUN cd api && npx prisma@$(jq -r '.devDependencies.prisma' < package.json) generate -FROM node:18-alpine +FROM node:20-alpine RUN npm i -g pm2@4 USER node WORKDIR /home/node/fcc diff --git a/docker/web/Dockerfile b/docker/web/Dockerfile index 16a29b67c86..3d615e7a456 100644 --- a/docker/web/Dockerfile +++ b/docker/web/Dockerfile @@ -1,5 +1,4 @@ -# bookworm was only released on 10-6-2023, so is a little too new. -FROM node:18-bullseye AS builder +FROM node:20-bookworm AS builder # global installs need root permissions, so have to happen before we switch to # the node user RUN npm i -g pnpm@8 @@ -42,7 +41,7 @@ RUN pnpm install -F=shared -F=client -F=ui -F=browser-scripts -F=challenge-parse --frozen-lockfile RUN pnpm build:client -FROM node:18-alpine +FROM node:20-alpine RUN npm i -g serve@13 pm2@4 USER node WORKDIR /home/node/client