- n8n app data: /opt/n8n/data → /home/node/.n8n
- postgres data: /opt/n8n/postgres → /var/lib/postgresql/data
(was using ${N8N_DB_DATA_PATH} which Coolify converts to a named volume)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
63 lines
1.6 KiB
YAML
63 lines
1.6 KiB
YAML
services:
|
|
n8n:
|
|
image: n8nio/n8n:latest
|
|
pull_policy: always
|
|
container_name: n8n
|
|
restart: unless-stopped
|
|
environment:
|
|
DB_TYPE: ${N8N_DB_TYPE}
|
|
DB_POSTGRESDB_HOST: ${N8N_DB_HOST}
|
|
DB_POSTGRESDB_PORT: ${N8N_DB_PORT}
|
|
DB_POSTGRESDB_DATABASE: ${N8N_DB_NAME}
|
|
DB_POSTGRESDB_USER: ${N8N_DB_USER}
|
|
DB_POSTGRESDB_PASSWORD: ${N8N_DB_PASSWORD}
|
|
|
|
N8N_HOST: ${SERVICE_FQDN_N8N}
|
|
N8N_PORT: ${N8N_PORT}
|
|
N8N_PROTOCOL: ${N8N_PROTOCOL}
|
|
WEBHOOK_URL: https://${SERVICE_FQDN_N8N}/
|
|
|
|
GENERIC_TIMEZONE: ${N8N_TIMEZONE}
|
|
N8N_ENCRYPTION_KEY: ${N8N_ENCRYPTION_KEY}
|
|
|
|
NODE_ENV: ${N8N_NODE_ENV}
|
|
N8N_DIAGNOSTICS_ENABLED: ${N8N_DIAGNOSTICS_ENABLED}
|
|
|
|
N8N_EMAIL_MODE: ${N8N_EMAIL_MODE}
|
|
N8N_SMTP_HOST: ${N8N_SMTP_HOST}
|
|
N8N_SMTP_PORT: ${N8N_SMTP_PORT}
|
|
N8N_SMTP_USER: ${N8N_SMTP_USER}
|
|
N8N_SMTP_PASS: ${N8N_SMTP_PASS}
|
|
N8N_SMTP_SENDER: ${N8N_SMTP_SENDER}
|
|
N8N_SMTP_SSL: ${N8N_SMTP_SSL}
|
|
N8N_SMTP_STARTTLS: ${N8N_SMTP_STARTTLS}
|
|
|
|
volumes:
|
|
- /opt/n8n/data:/home/node/.n8n:Z
|
|
|
|
networks:
|
|
- n8n
|
|
- proxy
|
|
labels:
|
|
traefik.http.services.n8n.loadbalancer.server.port: "5678"
|
|
|
|
n8n-db:
|
|
image: postgres:16
|
|
pull_policy: always
|
|
container_name: n8n-pg
|
|
restart: unless-stopped
|
|
environment:
|
|
POSTGRES_USER: ${POSTGRES_USER}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
|
POSTGRES_DB: ${POSTGRES_DB}
|
|
volumes:
|
|
- /opt/n8n/postgres:/var/lib/postgresql/data:Z
|
|
networks:
|
|
- n8n
|
|
|
|
networks:
|
|
n8n:
|
|
driver: bridge
|
|
proxy:
|
|
external: true
|