fix: adapt n8n compose for Coolify (remove Traefik/proxy/mail_internal, add dockerfile_inline)

This commit is contained in:
root
2026-03-23 01:16:09 +00:00
parent f36e537336
commit f7a4c1134a
2 changed files with 20 additions and 54 deletions

View File

@@ -1,6 +1,10 @@
services: services:
n8n: n8n:
image: n8nio/n8n:latest image: n8nio/n8n:latest
build:
context: .
dockerfile_inline: |
FROM n8nio/n8n:latest
container_name: n8n container_name: n8n
restart: unless-stopped restart: unless-stopped
environment: environment:
@@ -33,33 +37,7 @@ services:
N8N_SMTP_STARTTLS: ${N8N_SMTP_STARTTLS} N8N_SMTP_STARTTLS: ${N8N_SMTP_STARTTLS}
networks: networks:
- proxy
- n8n - n8n
- mail_internal
labels:
traefik.enable: "true"
traefik.docker.network: "proxy"
# UI (protegida por Authentik)
traefik.http.routers.n8n-ui.rule: "Host(`${N8N_DOMAIN}`)"
traefik.http.routers.n8n-ui.entrypoints: "${TRAEFIK_ENTRYPOINT_SECURE}"
traefik.http.routers.n8n-ui.tls: "true"
traefik.http.routers.n8n-ui.tls.certresolver: "${TRAEFIK_CERTRESOLVER}"
traefik.http.routers.n8n-ui.service: "n8n"
traefik.http.routers.n8n-ui.priority: "10"
# traefik.http.routers.n8n-ui.middlewares: "${TRAEFIK_AUTH_MIDDLEWARE}"
# Webhooks (NO protegidos, para que terceros puedan llamar)
traefik.http.routers.n8n-webhook.rule: "Host(`${N8N_DOMAIN}`) && (PathPrefix(`/webhook`) || PathPrefix(`/webhook-test`))"
traefik.http.routers.n8n-webhook.entrypoints: "${TRAEFIK_ENTRYPOINT_SECURE}"
traefik.http.routers.n8n-webhook.tls: "true"
traefik.http.routers.n8n-webhook.tls.certresolver: "${TRAEFIK_CERTRESOLVER}"
traefik.http.routers.n8n-webhook.service: "n8n"
traefik.http.routers.n8n-webhook.priority: "20"
# Puerto interno de n8n
traefik.http.services.n8n.loadbalancer.server.port: "${N8N_PORT}"
n8n-db: n8n-db:
image: postgres:16 image: postgres:16
@@ -75,11 +53,5 @@ services:
- n8n - n8n
networks: networks:
proxy:
external: true
# authentik_internal:
# driver: bridge
n8n: n8n:
driver: bridge driver: bridge
mail_internal:
external: true

View File

@@ -1,28 +1,28 @@
##### n8n - Base de datos ##### ##### n8n - Base de datos #####
N8N_DB_TYPE= N8N_DB_TYPE=postgresdb
N8N_DB_HOST= N8N_DB_HOST=n8n-db
N8N_DB_PORT= N8N_DB_PORT=5432
N8N_DB_NAME= N8N_DB_NAME=n8n
N8N_DB_USER= N8N_DB_USER=n8n
N8N_DB_PASSWORD= N8N_DB_PASSWORD=
##### n8n - Servidor / dominio ##### ##### n8n - Servidor / dominio #####
N8N_HOST= N8N_HOST=
N8N_PORT= N8N_PORT=5678
N8N_PROTOCOL= N8N_PROTOCOL=https
N8N_WEBHOOK_URL= N8N_WEBHOOK_URL=
N8N_TIMEZONE= N8N_TIMEZONE=Europe/Madrid
# Genera una nueva con: openssl rand -hex 32 # Genera una nueva con: openssl rand -hex 32
N8N_ENCRYPTION_KEY= N8N_ENCRYPTION_KEY=
N8N_NODE_ENV= N8N_NODE_ENV=production
N8N_DIAGNOSTICS_ENABLED= N8N_DIAGNOSTICS_ENABLED=false
##### n8n - Correo (via mail-relay interno) ##### ##### n8n - Correo (SMTP) #####
N8N_EMAIL_MODE=smtp N8N_EMAIL_MODE=smtp
N8N_SMTP_HOST=mail-relay N8N_SMTP_HOST=
N8N_SMTP_PORT=587 N8N_SMTP_PORT=587
N8N_SMTP_USER= N8N_SMTP_USER=
N8N_SMTP_PASS= N8N_SMTP_PASS=
@@ -31,15 +31,9 @@ N8N_SMTP_SSL=false
N8N_SMTP_STARTTLS=false N8N_SMTP_STARTTLS=false
##### PostgreSQL interno ##### ##### PostgreSQL interno #####
POSTGRES_USER= POSTGRES_USER=n8n
POSTGRES_PASSWORD= POSTGRES_PASSWORD=
POSTGRES_DB= POSTGRES_DB=n8n
# Ruta en el host para los datos de Postgres (relativa o absoluta) # Ruta en el host para los datos de Postgres
N8N_DB_DATA_PATH= N8N_DB_DATA_PATH=/opt/n8n/postgres
##### Traefik #####
N8N_DOMAIN=
TRAEFIK_ENTRYPOINT_SECURE=
TRAEFIK_CERTRESOLVER=
TRAEFIK_AUTH_MIDDLEWARE=