46 lines
1.4 KiB
YAML
46 lines
1.4 KiB
YAML
services:
|
|
n8n:
|
|
image: docker.n8n.io/n8nio/n8n
|
|
container_name: n8n
|
|
restart: always
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.n8n.rule=Host(`${SUBDOMAIN}.${DOMAIN_NAME}`)
|
|
- traefik.http.routers.n8n.tls=true
|
|
- traefik.http.routers.n8n.entrypoints=web,websecure
|
|
- traefik.http.routers.n8n.tls.certresolver=cloudflare
|
|
- traefik.http.middlewares.n8n.headers.SSLRedirect=true
|
|
- traefik.http.middlewares.n8n.headers.STSSeconds=315360000
|
|
- traefik.http.middlewares.n8n.headers.browserXSSFilter=true
|
|
- traefik.http.middlewares.n8n.headers.contentTypeNosniff=true
|
|
- traefik.http.middlewares.n8n.headers.forceSTSHeader=true
|
|
- traefik.http.middlewares.n8n.headers.SSLHost=${DOMAIN_NAME}
|
|
- traefik.http.middlewares.n8n.headers.STSIncludeSubdomains=true
|
|
- traefik.http.middlewares.n8n.headers.STSPreload=true
|
|
- traefik.http.middlewares.n8n.headers.frameDeny=true
|
|
- traefik.http.routers.n8n.middlewares=n8n@docker
|
|
- traefik.http.services.n8n.loadbalancer.server.port=5678
|
|
- traefik.docker.network=webapp
|
|
env_file:
|
|
- .env
|
|
secrets:
|
|
- DB_PASS
|
|
volumes:
|
|
- n8n_data:/home/node/.n8n
|
|
- ./local-files:/files
|
|
networks:
|
|
- webapp
|
|
- db
|
|
secrets:
|
|
DB_PASS:
|
|
file: .secrets/DB_PASS
|
|
networks:
|
|
webapp:
|
|
external:
|
|
true
|
|
db:
|
|
external:
|
|
true
|
|
volumes:
|
|
n8n_data:
|
|
name: n8n_data |