diff --git a/Dockerfile b/Dockerfile index dd6ee098..46f92427 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,7 +6,7 @@ FROM --platform=$BUILDPLATFORM tonistiigi/xx@sha256:c64defb9ed5a91eacb37f96ccc3d # Stage 1: Build Frontend # Runs on the BUILD platform (amd64) - frontend has no native modules so the # compiled output (JS/CSS/HTML) is entirely platform-agnostic. -FROM --platform=$BUILDPLATFORM node:22-alpine@sha256:8ea2348b068a9544dae7317b4f3aafcdc032df1647bb7d768a05a5cad1a7683f AS frontend-builder +FROM --platform=$BUILDPLATFORM node:25-alpine@sha256:bdf2cca6fe3dabd014ea60163eca3f0f7015fbd5c7ee1b0e9ccb4ced6eb02ef4 AS frontend-builder WORKDIR /app/frontend @@ -22,7 +22,7 @@ RUN npm run build # Stage 2: Compile TypeScript # Runs on the BUILD platform (amd64) - tsc output is platform-agnostic JS. -FROM --platform=$BUILDPLATFORM node:22-alpine@sha256:8ea2348b068a9544dae7317b4f3aafcdc032df1647bb7d768a05a5cad1a7683f AS backend-builder +FROM --platform=$BUILDPLATFORM node:25-alpine@sha256:bdf2cca6fe3dabd014ea60163eca3f0f7015fbd5c7ee1b0e9ccb4ced6eb02ef4 AS backend-builder WORKDIR /app/backend @@ -44,7 +44,7 @@ RUN npm run build # tonistiigi/xx + clang as the cross-compiler. # This avoids the Node.js v20 SIGILL crash that occurs when npm runs # under QEMU because QEMU lacks ARMv8.1 LSE atomic instruction support. -FROM --platform=$BUILDPLATFORM node:22-alpine@sha256:8ea2348b068a9544dae7317b4f3aafcdc032df1647bb7d768a05a5cad1a7683f AS prod-deps +FROM --platform=$BUILDPLATFORM node:25-alpine@sha256:bdf2cca6fe3dabd014ea60163eca3f0f7015fbd5c7ee1b0e9ccb4ced6eb02ef4 AS prod-deps # Copy xx cross-compilation tools into this stage COPY --from=xx / / @@ -158,7 +158,7 @@ RUN --mount=type=cache,id=go-mod,sharing=locked,target=/go/pkg/mod \ # in this image; operators who want the feature install Trivy on the host # and mount the binary into the container, or run a sidecar. See # docs/operations/trivy-setup.mdx for the supported integration paths. -FROM node:22-alpine@sha256:8ea2348b068a9544dae7317b4f3aafcdc032df1647bb7d768a05a5cad1a7683f +FROM node:25-alpine@sha256:bdf2cca6fe3dabd014ea60163eca3f0f7015fbd5c7ee1b0e9ccb4ced6eb02ef4 # Daily cache-bust for the apk upgrade layer. CI passes the current date # (YYYY-MM-DD) as a build-arg, so this RUN layer's hash changes at most