FROM node:22-bookworm-slim

RUN apt-get update \
  && apt-get install -y --no-install-recommends ca-certificates openssl \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /app

ENV NODE_ENV=production \
    PROXY_CONFIG=/app/data/config.json \
    LOCAL_FORWARD_PROXY_DOCKER=1

COPY package.json package-lock.json ./
RUN npm ci --omit=dev

COPY src ./src
COPY public ./public
COPY README.md ./

RUN mkdir -p /app/data /app/certs

VOLUME ["/app/data", "/app/certs"]
EXPOSE 80 443

CMD ["node", "src/index.js"]
