Aaron Voelker 4c578ea2c2
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone Build is failing
Dockerfile aktualisiert
2026-05-17 16:07:12 +00:00

33 lines
555 B
Docker

FROM node:18-alpine
# Arbeitsverzeichnis
WORKDIR /app
# User anlegen (kein root!)
RUN addgroup -S appgroup && adduser -S appuser -G appgroup
# Dependencies zuerst (Cache Vorteil)
COPY package*.json ./
RUN npm install --production
# Rest kopieren
COPY . .
# Volume für Output
VOLUME ["/data"]
# Rechte setzen
RUN chown -R appuser:appgroup /app /data
# User wechseln
USER appuser
# Port (falls Webapp)
EXPOSE 8080
# Healthcheck
HEALTHCHECK --interval=30s --timeout=5s \
CMD wget -qO- http://localhost:8080 || exit 1
# Start
CMD ["npm", "start"]