#!/bin/sh print_env_details() { echo "Node.js: $(node -v)" echo "n8n: $(n8n --version)" # Chromium version from Puppeteer path CHROME_VERSION=$("$PUPPETEER_EXECUTABLE_PATH" --version 2>/dev/null || echo "Chromium not found") echo "Chromium: $CHROME_VERSION" PUPPETEER_PATH="/opt/n8n-custom-nodes/node_modules/n8n-nodes-puppeteer" if [ -f "$PUPPETEER_PATH/package.json" ]; then PUPPETEER_VERSION=$(node -p "require('$PUPPETEER_PATH/package.json').version") echo "n8n-nodes-puppeteer: $PUPPETEER_VERSION" CORE_PUPPETEER_VERSION=$(cd "$PUPPETEER_PATH" && node -e "try { console.log(require('puppeteer/package.json').version); } catch { console.log('not found'); }") echo "Puppeteer core: $CORE_PUPPETEER_VERSION" else echo "n8n-nodes-puppeteer: not installed" fi echo "Puppeteer path: $PUPPETEER_EXECUTABLE_PATH" } export N8N_CUSTOM_EXTENSIONS="/opt/n8n-custom-nodes:${N8N_CUSTOM_EXTENSIONS}" print_env_details # Set node environment export NODE_FUNCTION_ALLOW_EXTERNAL=* export NODE_PATH=/opt/n8n-custom-nodes/node_modules # Start n8n exec /docker-entrypoint.sh "$@"