# WhatsApp-Bruecke (Schritt 15). Eigenes kleines Image, laeuft als Benutzer "node",
# Anmeldedaten im Volume /data (nur dieser Container sieht sie).
FROM node:22-bookworm-slim
# Sicherheitsupdates des Basis-Images (z. B. perl-base, Trivy-Befund 11.10.2026). Docker cached diesen
# Schritt: neu ausgefuehrt wird er erst, wenn sich der Grundbaustein aendert (das woechentliche
# Image-Auto-Update auf dem Server baut dann neu) oder bei --no-cache.
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && rm -rf /var/lib/apt/lists/*
WORKDIR /bridge
COPY package.json package-lock.json ./
RUN npm ci --omit=dev --ignore-scripts && npm cache clean --force
COPY src ./src
RUN mkdir -p /data && chown node:node /data
USER node
ENV NODE_ENV=production WA_DATA_DIR=/data PORT=8080
VOLUME ["/data"]
CMD ["node", "src/bridge.mjs"]
