n8n / Dockerfile
Perspicacious's picture
Expose n8n instead of PDF helper
9cc9e89
Raw
History Blame Contribute Delete
1.24 kB
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"]