services: n8n: image: docker.n8n.io/n8nio/n8n container_name: n8n restart: unless-stopped environment: - N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true - N8N_PORT=5678 - N8N_RUNNERS_ENABLED=true - NODE_ENV=production - GENERIC_TIMEZONE=Europe/Bratislava - TZ=Europe/Bratislava - N8N_SECURE_COOKIE=false - N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true volumes: - ./n8n-node-data:/home/node/.n8n - ./n8n-files:/files extra_hosts: - "enterprise.n8n.io:104.26.13.187" - "enterprise.n8n.io:104.26.12.187" - "enterprise.n8n.io:172.67.68.102" dns: - 1.1.1.1 - 8.8.8.8 networks: - traefik-proxy - n8n labels: - "traefik.enable=true" - "traefik.docker.network=traefik-proxy" # Prod Router - "traefik.http.routers.n8n.rule=Host(`n8n.forust.xyz`)" - "traefik.http.routers.n8n.entrypoints=websecure" - "traefik.http.routers.n8n.middlewares=security-headers@file" - "traefik.http.routers.n8n.service=n8n" - "traefik.http.routers.n8n.tls=true" - "traefik.http.services.n8n.loadbalancer.server.port=5678" # Local Router - "traefik.http.routers.n8n-local.rule=Host(`n8n.workstation.internal`) || Host(`n8n.internal`)" - "traefik.http.routers.n8n-local.entrypoints=websecure" - "traefik.http.routers.n8n-local.middlewares=security-headers@file" - "traefik.http.routers.n8n-local.service=n8n" - "traefik.http.routers.n8n-local.tls=true" # Dev Router - "traefik.http.routers.n8n-dev.rule=Host(`n8n.gigaforust.internal`)" - "traefik.http.routers.n8n-dev.entrypoints=websecure" - "traefik.http.routers.n8n-dev.middlewares=security-headers@file" - "traefik.http.routers.n8n-dev.service=n8n" - "traefik.http.routers.n8n-dev.tls=true" - glance.name=n8n - glance.icon=si:n8n - glance.url=https://n8n.forust.xyz/ - glance.description=n8n is a workflow automation tool that enables you to connect various apps and services to automate tasks and processes. networks: n8n: external: false traefik-proxy: external: true