From de4fc294d6132b76048fc34fec7d1e8b434cf7f6 Mon Sep 17 00:00:00 2001 From: A Nomad Date: Thu, 19 Mar 2026 15:07:36 +0100 Subject: [PATCH 1/3] fix --- Dockerfile | 13 +++- .../modules/@apostrophecms/express/index.js | 8 +++ website/package-lock.json | 71 +++++++++++++++++++ website/package.json | 1 + 4 files changed, 92 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 62590a2b..7980b60b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,8 @@ +<<<<<<< HEAD +FROM node:24-alpine as build +======= FROM node:24-slim as build +>>>>>>> 4389063392e10317ff55fb313a214346a4c9b131 # Set build arguments with defaults ARG NODE_ENV=production ARG NPM_INSTALL_FLAGS= @@ -10,15 +14,22 @@ WORKDIR /app COPY website/package*.json ./ # Install dependencies based on environment and flags -RUN npm ci $NPM_INSTALL_FLAGS +RUN npm install $NPM_INSTALL_FLAGS # Copy website files COPY website/ ./ +<<<<<<< HEAD +FROM node:24-alpine + +# Create a non-root user and group +RUN addgroup -S appgroup && adduser -S -G appgroup appuser +======= FROM node:24-slim # Create a non-root user and group RUN addgroup --system appgroup && adduser --system --ingroup appgroup appuser +>>>>>>> 4389063392e10317ff55fb313a214346a4c9b131 # Copy layer wfrom build image COPY --chown=appuser:appgroup --from=build /app /app diff --git a/website/modules/@apostrophecms/express/index.js b/website/modules/@apostrophecms/express/index.js index acf8e146..447825f3 100644 --- a/website/modules/@apostrophecms/express/index.js +++ b/website/modules/@apostrophecms/express/index.js @@ -1,4 +1,5 @@ const { getEnv } = require('../../../utils/env'); +const morgan = require('morgan'); module.exports = { options: { @@ -7,4 +8,11 @@ module.exports = { secret: getEnv('SESSION_SECRET'), }, }, + middleware(_self) { + return { + logRequests: { + middleware: morgan(':date[iso] :method :url :status :response-time ms - :remote-addr - :user-agent'), + }, + }; + }, }; diff --git a/website/package-lock.json b/website/package-lock.json index 0a16a4e8..52d6f083 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -24,6 +24,7 @@ "lodash": "^4.17.21", "lozad": "^1.16.0", "mongodb": "^6.17.0", + "morgan": "^1.10.0", "node-fetch": "^2.6.7", "normalize.css": "^8.0.1", "pm2-runtime": "^5.4.1", @@ -6222,6 +6223,24 @@ ], "license": "MIT" }, + "node_modules/basic-auth": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", + "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", + "license": "MIT", + "dependencies": { + "safe-buffer": "5.1.2" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/basic-auth/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "license": "MIT" + }, "node_modules/big.js": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", @@ -13080,6 +13099,58 @@ "node": ">=16.20.1" } }, + "node_modules/morgan": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.1.tgz", + "integrity": "sha512-223dMRJtI/l25dJKWpgij2cMtywuG/WiUKXdvwfbhGKBhy1puASqXwFzmWZ7+K73vUPoR7SS2Qz2cI/g9MKw0A==", + "license": "MIT", + "dependencies": { + "basic-auth": "~2.0.1", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-finished": "~2.3.0", + "on-headers": "~1.1.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/morgan/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/morgan/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/morgan/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "license": "MIT", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/morgan/node_modules/on-headers": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.1.0.tgz", + "integrity": "sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", diff --git a/website/package.json b/website/package.json index d3b211c2..81f940d3 100644 --- a/website/package.json +++ b/website/package.json @@ -53,6 +53,7 @@ "lodash": "^4.17.21", "lozad": "^1.16.0", "mongodb": "^6.17.0", + "morgan": "^1.10.0", "node-fetch": "^2.6.7", "normalize.css": "^8.0.1", "pm2-runtime": "^5.4.1", From bc3db62c2648bb8a842d4920ca38b20997b13633 Mon Sep 17 00:00:00 2001 From: A Nomad Date: Thu, 19 Mar 2026 15:09:21 +0100 Subject: [PATCH 2/3] update dockerfile --- Dockerfile | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7980b60b..3694ae8e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,5 @@ -<<<<<<< HEAD FROM node:24-alpine as build -======= -FROM node:24-slim as build ->>>>>>> 4389063392e10317ff55fb313a214346a4c9b131 + # Set build arguments with defaults ARG NODE_ENV=production ARG NPM_INSTALL_FLAGS= @@ -14,22 +11,15 @@ WORKDIR /app COPY website/package*.json ./ # Install dependencies based on environment and flags -RUN npm install $NPM_INSTALL_FLAGS +RUN npm ci $NPM_INSTALL_FLAGS # Copy website files COPY website/ ./ -<<<<<<< HEAD FROM node:24-alpine # Create a non-root user and group RUN addgroup -S appgroup && adduser -S -G appgroup appuser -======= -FROM node:24-slim - -# Create a non-root user and group -RUN addgroup --system appgroup && adduser --system --ingroup appgroup appuser ->>>>>>> 4389063392e10317ff55fb313a214346a4c9b131 # Copy layer wfrom build image COPY --chown=appuser:appgroup --from=build /app /app From 40c32c7b96b745688f7895cc873da35c89ff6af9 Mon Sep 17 00:00:00 2001 From: A Nomad Date: Thu, 19 Mar 2026 15:19:02 +0100 Subject: [PATCH 3/3] fix lint --- website/modules/@apostrophecms/express/index.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/website/modules/@apostrophecms/express/index.js b/website/modules/@apostrophecms/express/index.js index 447825f3..ce9f6351 100644 --- a/website/modules/@apostrophecms/express/index.js +++ b/website/modules/@apostrophecms/express/index.js @@ -11,7 +11,9 @@ module.exports = { middleware(_self) { return { logRequests: { - middleware: morgan(':date[iso] :method :url :status :response-time ms - :remote-addr - :user-agent'), + middleware: morgan( + ':date[iso] :method :url :status :response-time ms - :remote-addr - :user-agent', + ), }, }; },