File size: 1,242 Bytes
39d2ba7
223cfa0
754fd3f
9c9a690
39d2ba7
93feaed
 
 
39d2ba7
93feaed
 
 
 
 
 
b00af8a
39d2ba7
 
aa30655
95e9b04
aa30655
95e9b04
5392f2c
 
 
aa30655
b00af8a
93feaed
 
b00af8a
2095318
 
9cc9e89
5392f2c
 
9cc9e89
 
0ac823c
aa30655
 
53da7ea
5392f2c
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
FROM node:22-bookworm-slim

USER root

# Debian + Node 22 avoids the isolated-vm/V8 build failure seen on Node 20 Alpine.
RUN apt-get update \
    && apt-get install -y --no-install-recommends \
      ca-certificates openssl dnsutils curl wget bash \
      git python3 make g++ \
      libcairo2 libpango-1.0-0 libjpeg62-turbo libgif7 \
      postgresql-client ffmpeg yt-dlp \
      chromium chromium-driver \
      libnss3 libfreetype6 libharfbuzz0b \
      fonts-noto fonts-noto-cjk fonts-noto-color-emoji fonts-freefont-ttf fonts-dejavu fonts-liberation \
    && rm -rf /var/lib/apt/lists/*

RUN npm install -g n8n@latest

WORKDIR /app

COPY pdf-server.js /app/pdf-server.js

RUN npm init -y \
    && npm install --omit=dev express playwright-core \
    && npm cache clean --force

ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
ENV PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH=/usr/bin/chromium
ENV PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1
ENV N8N_USER_FOLDER=/data/.n8n
ENV N8N_COMMUNITY_PACKAGES_ENABLED=true
ENV PORT=7860
ENV N8N_PORT=7860
ENV N8N_LISTEN_ADDRESS=0.0.0.0
ENV PDF_SERVER_HOST=127.0.0.1
ENV PDF_SERVER_PORT=3000

COPY start.sh /start.sh
RUN chmod +x /start.sh

ENTRYPOINT []
CMD ["/start.sh"]