From 33457c19c21d198d225c5521ca08f50ea44f0162 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20P=C3=B6ttker?= Date: Fri, 30 Oct 2026 10:00:57 +0100 Subject: [PATCH] =?UTF-8?q?chore(docker):=20Node.js=2020=20=E2=86=92=2024?= =?UTF-8?q?=20LTS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Node 20 ist seit April 2026 End-of-Life. Backend- und Frontend-Images laufen jetzt auf node:24-alpine; @types/node im Backend auf ^24 angehoben. Co-Authored-By: Claude Opus 5.5 --- paperless-backend/Dockerfile | 4 ++-- paperless-backend/package-lock.json | 27 ++++++++------------------- paperless-backend/package.json | 2 +- paperless-frontend/Dockerfile | 2 +- 4 files changed, 12 insertions(+), 23 deletions(-) diff --git a/paperless-backend/Dockerfile b/paperless-backend/Dockerfile index cec78f6..362f78e 100644 --- a/paperless-backend/Dockerfile +++ b/paperless-backend/Dockerfile @@ -1,5 +1,5 @@ # Backend -FROM node:20-alpine AS builder +FROM node:24-alpine AS builder RUN apk add --no-cache git WORKDIR /app COPY package*.json ./ @@ -8,7 +8,7 @@ COPY . . RUN npm run build # Production -FROM node:20-alpine +FROM node:24-alpine RUN apk add --no-cache ghostscript imagemagick font-liberation fontconfig WORKDIR /app COPY --from=builder /app/dist ./dist diff --git a/paperless-backend/package-lock.json b/paperless-backend/package-lock.json index f4796f4..9db3963 100644 --- a/paperless-backend/package-lock.json +++ b/paperless-backend/package-lock.json @@ -55,7 +55,7 @@ "@types/jest": "^30.0.0", "@types/mailparser": "^3.4.6", "@types/multer": "^2.1.0", - "@types/node": "^22.10.7", + "@types/node": "^24.19.2", "@types/nodemailer": "^8.0.0", "@types/qrcode": "^1.5.6", "@types/supertest": "^6.0.2", @@ -4105,12 +4105,12 @@ } }, "node_modules/@types/node": { - "version": "22.19.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.15.tgz", - "integrity": "sha512-F0R/h2+dsy5wJAUe3tAU6oqa2qbWY5TpNfL/RGmo1y38hiyO1w3x2jPtt76wmuaJI4DQnOBu21cNXQ2STIUUWg==", + "version": "24.19.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.19.2.tgz", + "integrity": "sha512-93d49wCWJkCyN87MxLpNN6KXPCwFw7bVUg79mGUV1OS40JGWwVCr8n61DXCSqz7CV6/VfPkb7xec7uP2M+QHWQ==", "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": ">=7.24.0 <7.24.7" } }, "node_modules/@types/nodemailer": { @@ -13062,21 +13062,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/undici": { - "version": "6.25.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-6.25.0.tgz", - "integrity": "sha512-ZgpWDC5gmNiuY9CnLVXEH8rl50xhRCuLNA97fAUnKi8RRuV4E6KG31pDTsLVUKnohJE0I3XDrTeEydAXRw47xg==", - "license": "MIT", - "optional": true, - "peer": true, - "engines": { - "node": ">=18.17" - } - }, "node_modules/undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.24.6.tgz", + "integrity": "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==", "license": "MIT" }, "node_modules/universalify": { diff --git a/paperless-backend/package.json b/paperless-backend/package.json index 0ea2720..92e2758 100644 --- a/paperless-backend/package.json +++ b/paperless-backend/package.json @@ -70,7 +70,7 @@ "@types/jest": "^30.0.0", "@types/mailparser": "^3.4.6", "@types/multer": "^2.1.0", - "@types/node": "^22.10.7", + "@types/node": "^24.19.2", "@types/nodemailer": "^8.0.0", "@types/qrcode": "^1.5.6", "@types/supertest": "^6.0.2", diff --git a/paperless-frontend/Dockerfile b/paperless-frontend/Dockerfile index b80fc73..094c0f3 100644 --- a/paperless-frontend/Dockerfile +++ b/paperless-frontend/Dockerfile @@ -1,5 +1,5 @@ # Build -FROM node:20-alpine AS builder +FROM node:24-alpine AS builder WORKDIR /app COPY package*.json ./ RUN npm ci