forgejo-pdf/worker/pdf/Dockerfile
codex 1ce1370983
Some checks failed
pdfexport / pdfexport-worker-fixtures (push) Has been cancelled
Add server-side Markdown→PDF export (v0.1)
2025-12-16 17:52:53 +00:00

49 lines
1,019 B
Docker

FROM node:20-bookworm-slim
ENV NODE_ENV=production \
TZ=UTC \
PUPPETEER_CACHE_DIR=/opt/puppeteer \
PUPPETEER_SKIP_DOWNLOAD=0
RUN apt-get update -y && apt-get install -y --no-install-recommends \
ca-certificates \
dumb-init \
qpdf \
poppler-utils \
libasound2 \
libatk-bridge2.0-0 \
libatk1.0-0 \
libcups2 \
libdrm2 \
libgbm1 \
libgtk-3-0 \
libnss3 \
libpango-1.0-0 \
libpangocairo-1.0-0 \
libx11-6 \
libx11-xcb1 \
libxcb1 \
libxcomposite1 \
libxdamage1 \
libxext6 \
libxfixes3 \
libxrandr2 \
libxrender1 \
libxshmfence1 \
libxkbcommon0 \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /opt/forgejo-pdf
COPY package.json package-lock.json ./
RUN npm ci --omit=dev
COPY src ./src
COPY scripts ./scripts
COPY assets ./assets
RUN node scripts/copy-assets.js \
&& node scripts/generate-manifest.js
ENTRYPOINT ["dumb-init", "--"]
CMD ["node", "src/index.js"]