d07cda48c6
Zonder ENV DB_PATH schreef een vergeten env var stilletjes naar de container-filesystem, waardoor alle data bij de volgende redeploy weg was. VOLUME /data documenteert het verwachte mountpoint. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013gwc3aCiyQxmCWQke8RvEz
20 lines
593 B
Docker
20 lines
593 B
Docker
FROM node:22-slim AS build
|
|
RUN apt-get update && apt-get install -y --no-install-recommends python3 build-essential \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
WORKDIR /app
|
|
COPY package.json package-lock.json ./
|
|
RUN npm ci --omit=dev
|
|
COPY . .
|
|
|
|
FROM node:22-slim
|
|
WORKDIR /app
|
|
COPY --from=build /app .
|
|
ENV NODE_ENV=production
|
|
# De SQLite-database hoort op het persistente volume te staan; zonder deze
|
|
# default zou een vergeten DB_PATH stilletjes naar de container-fs schrijven
|
|
# en bij elke redeploy alle data verliezen.
|
|
ENV DB_PATH=/data/korting.db
|
|
VOLUME /data
|
|
EXPOSE 3000
|
|
CMD ["node", "server.js"]
|