Files
privacy-gateway/anonymizer/Dockerfile
T

48 lines
744 B
Docker

# Dockerfile für den Anonymizer Service
# Läuft im Backend-Container oder standalone
FROM node:20-alpine AS base
# Installiere nötige Pakete
RUN apk add --no-cache dumb-init
WORKDIR /app
# Kopiere Package-Dateien
COPY package.json tsconfig.json ./
# Installiere Dependencies
RUN npm ci --only=production
# Dev-Stage für Entwicklung
FROM base AS dev
RUN npm ci
COPY . .
EXPOSE 3000
CMD ["dumb-init", "npm", "run", "dev"]
# Production-Stage
FROM base AS production
# Kopiere kompilierte Dateien (von Build-Stage)
COPY --from=builder /app/dist ./dist
USER node
EXPOSE 3000
CMD ["dumb-init", "node", "dist/index.js"]
# Builder-Stage (wird für Production benötigt)
FROM base AS builder
RUN npm ci
COPY . .
RUN npm run build