server/server.js — added helmet with CSP configured to allow Google Fonts
All checks were successful
Build / test (push) Successful in 9m29s
Build / release (push) Successful in 1s
Build / build (push) Successful in 32s

Dockerfile — creates a non-root app user and runs the process under it
server/routes.js — tailscale_ip validated against IPv4 regex (empty string still allowed)
index.html — sql.js CDN script tag already removed earlier in this session
This commit is contained in:
2026-03-28 09:20:24 -04:00
parent 6e40413385
commit 79adc365d8
7 changed files with 36 additions and 7 deletions

View File

@@ -1,4 +1,6 @@
FROM node:lts-alpine
RUN addgroup -S app && adduser -S app -G app
WORKDIR /app
COPY package*.json ./
@@ -8,5 +10,8 @@ COPY . .
RUN awk -F'"' '/"version"/{printf "const VERSION = \"%s\";\n", $4; exit}' \
package.json > js/version.js
RUN chown -R app:app /app
USER app
EXPOSE 3000
CMD ["node", "server/server.js"]