services: n8n: image: n8nio/n8n:2.35.3 env_file: - .env environment: DB_TYPE: postgresdb DB_POSTGRESDB_HOST: n8n-db DB_POSTGRESDB_USER: n8n DB_POSTGRESDB_DATABASE: n8n N8N_HOST: n8n32.next-hd.net N8N_PORT: "5678" N8N_PROTOCOL: https N8N_WEBHOOK_URL: https://n8n32.next-hd.net/ N8N_PROXY_HOPS: "1" GENERIC_TIMEZONE: Asia/Tokyo TZ: Asia/Tokyo N8N_EMAIL_MODE: smtp N8N_SMTP_HOST: postfix-relay N8N_SMTP_PORT: "587" N8N_SMTP_SSL: "false" N8N_SMTP_STARTTLS: "false" N8N_SMTP_SENDER: n8n-wf-admin@next-hd.co.jp expose: - 5678 mem_limit: 768m volumes: - n8n_data:/home/node/.n8n networks: - dokploy-network depends_on: n8n-db: condition: service_healthy labels: - traefik.enable=true - traefik.http.routers.n8n-web.rule=Host(`n8n32.next-hd.net`) - traefik.http.routers.n8n-web.entrypoints=web - traefik.http.routers.n8n-web.middlewares=redirect-to-https - traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https - traefik.http.routers.n8n-web.service=n8n-svc - traefik.http.routers.n8n-websecure.rule=Host(`n8n32.next-hd.net`) - traefik.http.routers.n8n-websecure.entrypoints=websecure - traefik.http.routers.n8n-websecure.tls.certresolver=letsencrypt - traefik.http.routers.n8n-websecure.service=n8n-svc - traefik.http.services.n8n-svc.loadbalancer.server.port=5678 restart: unless-stopped n8n-db: image: postgres:16-alpine env_file: - .env environment: POSTGRES_USER: n8n POSTGRES_DB: n8n mem_limit: 256m volumes: - n8n_db_data:/var/lib/postgresql/data networks: - dokploy-network healthcheck: test: ["CMD-SHELL", "pg_isready -U n8n"] interval: 10s timeout: 5s retries: 5 restart: unless-stopped networks: dokploy-network: external: true volumes: n8n_data: n8n_db_data: