1827s201 / docker-compose.yml
etsadiz's picture
Create docker-compose.yml
ccdaf3d verified
version: '3.8'
services:
n8n:
image: n8nio/n8n
ports:
- "5678:5678"
environment:
- N8N_HOST=${N8N_HOST:-localhost}
- N8N_PORT=5678
- N8N_PROTOCOL=${N8N_PROTOCOL:-http}
- N8N_EDITOR_BASE_URL=${N8N_EDITOR_BASE_URL:-http://localhost:5678}
- WEBHOOK_URL=${WEBHOOK_URL:-http://localhost:5678/}
- OPENAI_API_KEY=${OPENAI_API_KEY}
- WHATSAPP_API_TOKEN=${WHATSAPP_API_TOKEN}
- WHATSAPP_PHONE_NUMBER=${WHATSAPP_PHONE_NUMBER}
- INSTAGRAM_ACCESS_TOKEN=${INSTAGRAM_ACCESS_TOKEN}
- SNAPCHAT_ACCESS_TOKEN=${SNAPCHAT_ACCESS_TOKEN}
volumes:
- ./workflows:/home/node/.n8n/workflows
- ./data:/home/node/.n8n/data
depends_on:
- redis
redis:
image: redis:6-alpine
ports:
- "6379:6379"
volumes:
- redis_data:/data
command: redis-server --appendonly yes
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
monitoring:
image: grafana/grafana
ports:
- "3000:3000"
volumes:
- grafana_data:/var/lib/grafana
environment:
- GF_SECURITY_ADMIN_PASSWORD=${GRAFANA_ADMIN_PASSWORD:-admin}
depends_on:
- prometheus
prometheus:
image: prom/prometheus
ports:
- "9090:9090"
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
- prometheus_data:/prometheus
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.path=/prometheus'
- '--web.console.libraries=/usr/share/prometheus/console_libraries'
- '--web.console.templates=/usr/share/prometheus/consoles'
volumes:
redis_data:
grafana_data:
prometheus_data: