services: n8n: image: n8nio/n8n:latest restart: unless-stopped container_name: n8nv2 deploy: resources: limits: memory: 2G ports: - 9789:5678 volumes: - ./n8n-data:/home/node/.n8n # - /media/Daten/:/mnt/heimserver-daten - ./upload/:/mnt/upload # - ./files/WertPlattensammlung.csv:/mnt/files environment: - N8N_RUNNERS_MODE=external - N8N_RUNNERS_ENABLED=true - N8N_RUNNERS_BROKER_LISTEN_ADDRESS=0.0.0.0 - N8N_RUNNERS_BROKER_PORT=5679 - N8N_RUNNERS_AUTH_TOKEN=^0hXW4sgSU7aG6!LFkGZ - N8N_NATIVE_PYTHON_RUNNER=true - N8N_PYTHON_ENABLED=true - OFFLOAD_MANUAL_EXECUTIONS_TO_WORKERS=true - NODES_EXCLUDE=[] - N8N_RESTRICT_FILE_ACCESS_TO=/home/node/.n8n-files;/mnt/upload - N8N_DIAGNOSTICS_ENABLED=false - N8N_VERSION_NOTIFICATIONS_ENABLED=true - N8N_BASIC_AUTH_ACTIVE=true - N8N_BASIC_AUTH_USER=admin - N8N_BASIC_AUTH_PASSWORD="OvTCSDZqpA#NfitX^dP1" - GENERIC_TIMEZONE=Europe/Berlin - N8N_SECURE_COOKIE=false - N8N_HOST=n8n-app.hanold.online - N8N_PROTOCOL=https # - N8N_PORT=" " #GIFTIG: Killt den Zugriff auf n8n von außen - WEBHOOK_URL=https://n8n-app.hanold.online - N8N_PROXY_HOPS=1 - DB_TYPE=postgresdb - DB_POSTGRESDB_HOST=postgres # Service-Name statt IP - DB_POSTGRESDB_PORT=5432 - DB_POSTGRESDB_DATABASE=n8n - DB_POSTGRESDB_USER=n8n - DB_POSTGRESDB_PASSWORD=dbpass # Timeouts anpassen: - EXECUTIONS_TIMEOUT=36000 - N8N_HTTP_REQUEST_TIMEOUT=0 - N8N_HTTP_HEADERS_TIMEOUT=36000000 - N8N_HTTP_KEEPALIVE_TIMEOUT=36000000 - FETCH_HEADERS_TIMEOUT=36000000 - FETCH_BODY_TIMEOUT=360000000 - FETCH_CONNECT_TIMEOUT=6000000 - N8N_LOG_LEVEL=info - N8N_LOG_OUTPUT=console healthcheck: test: - CMD-SHELL - wget -q -T 5 --no-verbose --tries=1 -O - http://localhost:5678/healthz | grep -q '{"status":"ok"}' || exit 1 interval: 30s timeout: 10s retries: 3 start_period: 40s networks: - n8n-net postgres: image: postgres:15-alpine restart: unless-stopped container_name: n8nv2-postgres labels: - wud.watch=true - wud.tag.include=15-.*$ deploy: resources: limits: memory: 128M environment: - POSTGRES_DB=n8n - POSTGRES_USER=n8n - POSTGRES_PASSWORD=dbpass ports: - 5432:5432 volumes: - ./postgres-data:/var/lib/postgresql/data networks: - n8n-net healthcheck: test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB} -q"] interval: 10s timeout: 5s retries: 5 start_period: 20s task-runners: image: n8nio/runners:latest restart: unless-stopped container_name: n8n-runners deploy: resources: limits: memory: 128M environment: - N8N_RUNNERS_TASK_BROKER_URI=http://n8n:5679 - N8N_RUNNERS_AUTH_TOKEN=^0hXW4sgSU7aG6!LFkGZ - N8N_RUNNERS_MAX_CONCURRENCY=10 - N8N_RUNNERS_AUTO_SHUTDOWN_TIMEOUT=15 depends_on: - n8n networks: - n8n-net healthcheck: test: - CMD - sh - -c - wget -q -T 3 -O - http://localhost:5680/healthz >/dev/null 2>&1 interval: 10s timeout: 5s retries: 6 networks: n8n-net: driver: bridge