FROM node:18-bookworm-slim USER root RUN apt-get update && apt-get install -y \ ca-certificates \ openssl \ dnsutils \ curl \ wget \ bash \ git \ python3 \ python3-pip \ make \ g++ \ build-essential \ libcairo2-dev \ libpango1.0-dev \ libjpeg-dev \ libgif-dev \ postgresql-client \ ffmpeg \ fonts-noto \ fonts-noto-cjk \ fonts-freefont-ttf \ fonts-dejavu \ fonts-liberation \ chromium \ chromium-driver \ && rm -rf /var/lib/apt/lists/* ENV CHROME_BIN=/usr/bin/chromium ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium ENV PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 ENV PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH=/usr/bin/chromium RUN npm install -g npm@10 RUN npm install -g n8n@1.89.2 RUN npm install -g playwright-core WORKDIR /app COPY pdf-server.js /app/pdf-server.js RUN npm init -y && \ npm install express playwright-core ENV N8N_USER_FOLDER=/data/.n8n ENV N8N_COMMUNITY_PACKAGES_ENABLED=true ENV N8N_REINSTALL_MISSING_PACKAGES=true RUN mkdir -p /data/.n8n && chmod -R 777 /data/.n8n COPY start.sh /start.sh RUN chmod +x /start.sh CMD ["/start.sh"]