FROM docker.n8n.io/n8nio/n8n:latest USER root RUN apk update && apk add --no-cache \ hugo \ chromium \ nss \ glib \ freetype \ freetype-dev \ harfbuzz \ ca-certificates \ ttf-freefont \ udev \ ttf-liberation \ font-noto-emoji \ python3 \ make \ g++ \ sqlite-dev \ sqlite \ py3-distutils-extra ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true \ PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser COPY docker-custom-entrypoint.sh /docker-custom-entrypoint.sh RUN chmod +x /docker-custom-entrypoint.sh && \ chown node:node /docker-custom-entrypoint.sh RUN mkdir -p /opt/n8n-custom-nodes && \ cd /opt/n8n-custom-nodes && \ npm install n8n-nodes-puppeteer \ n8n-nodes-sqlite-memory && \ npm rebuild sqlite3 && \ chown -R node:node /opt/n8n-custom-nodes USER node ENTRYPOINT ["/docker-custom-entrypoint.sh"]