westworld/docker-compose.yml

202 lines
5.8 KiB
YAML

version: "3.9"
services:
westworld-backend:
image: westworld-backend:latest
container_name: westworld-backend
hostname: westworld-backend
restart: unless-stopped
env_file:
- .env
volumes:
- /Users/rohit89/Containers/westworld/volumes/backend/data:/data
depends_on:
- westworld-postgres
- westworld-redis
networks:
- rainbow-net
westworld-celery-worker:
image: westworld-backend:latest
container_name: westworld-celery-worker
hostname: westworld-celery-worker
command: celery -A app.celery.worker worker --loglevel=info --concurrency=4
restart: unless-stopped
env_file:
- .env
volumes:
- /Users/rohit89/Containers/westworld/volumes/celery/worker/logs:/app/logs
depends_on:
- westworld-redis
- westworld-postgres
networks:
- rainbow-net
westworld-celery-beat:
image: westworld-backend:latest
container_name: westworld-celery-beat
hostname: westworld-celery-beat
command: celery -A app.celery.worker beat --loglevel=info
restart: unless-stopped
env_file:
- .env
volumes:
- /Users/rohit89/Containers/westworld/volumes/celery/beat/logs:/app/logs
depends_on:
- westworld-redis
- westworld-postgres
networks:
- rainbow-net
westworld-frontend:
image: westworld-frontend:latest
container_name: westworld-frontend
hostname: westworld-frontend
restart: unless-stopped
env_file:
- .env
volumes:
- /Users/rohit89/Containers/westworld/volumes/frontend/data:/data
depends_on:
- westworld-postgres
- westworld-redis
networks:
- rainbow-net
westworld-mqtt:
image: westworld-mqtt:latest
container_name: westworld-mqtt
hostname: westworld-mqtt
restart: unless-stopped
volumes:
- /Users/rohit89/Containers/westworld/volumes/mqtt/data:/mosquitto/data
- /Users/rohit89/Containers/westworld/volumes/mqtt/log:/mosquitto/log
networks:
- rainbow-net
westworld-postgres:
image: westworld-postgres:latest
container_name: westworld-postgres
restart: unless-stopped
env_file:
- .env
volumes:
- /Users/rohit89/Containers/westworld/volumes/postgres/data:/var/lib/postgresql/data
- ./services/postgres/config/init:/docker-entrypoint-initdb.d:ro
networks:
- rainbow-net
westworld-redis:
image: westworld-redis:latest
container_name: westworld-redis
restart: unless-stopped
command: redis-server --appendonly yes
volumes:
- /Users/rohit89/Containers/westworld/volumes/redis/data:/data
networks:
- rainbow-net
westworld-flower:
image: mher/flower:2.0.1
container_name: westworld-flower
hostname: westworld-flower
restart: unless-stopped
command: celery flower --broker=redis://westworld-redis:6379/0 --port=5555
depends_on:
- westworld-redis
- westworld-celery-worker
networks:
- rainbow-net
westworld-prometheus:
image: prom/prometheus:v2.55.0
container_name: westworld-prometheus
hostname: westworld-prometheus
restart: unless-stopped
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.path=/prometheus'
- '--storage.tsdb.retention.time=30d'
- '--web.console.libraries=/usr/share/prometheus/console_libraries'
- '--web.console.templates=/usr/share/prometheus/consoles'
volumes:
- /Users/rohit89/Containers/westworld/volumes/prometheus/data:/prometheus
- ./services/prometheus/config/prometheus.yml:/etc/prometheus/prometheus.yml:ro
networks:
- rainbow-net
westworld-grafana:
image: grafana/grafana:11.3.0
container_name: westworld-grafana
hostname: westworld-grafana
restart: unless-stopped
environment:
- GF_SECURITY_ADMIN_USER=admin
- GF_SECURITY_ADMIN_PASSWORD=westworld2026
- GF_USERS_ALLOW_SIGN_UP=false
- GF_SERVER_ROOT_URL=http://westworld-grafana:3001
- GF_SERVER_HTTP_PORT=3001
volumes:
- /Users/rohit89/Containers/westworld/volumes/grafana/data:/var/lib/grafana
- ./services/grafana/provisioning:/etc/grafana/provisioning:ro
depends_on:
- westworld-prometheus
networks:
- rainbow-net
westworld-loki:
image: grafana/loki:3.2.0
container_name: westworld-loki
hostname: westworld-loki
restart: unless-stopped
command: -config.file=/etc/loki/loki-config.yml
volumes:
- /Users/rohit89/Containers/westworld/volumes/loki/data:/loki
- ./services/loki/config/loki-config.yml:/etc/loki/loki-config.yml:ro
networks:
- rainbow-net
westworld-promtail:
image: grafana/promtail:3.2.0
container_name: westworld-promtail
hostname: westworld-promtail
restart: unless-stopped
command: -config.file=/etc/promtail/promtail-config.yml
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- /var/lib/docker/containers:/var/lib/docker/containers:ro
- ./services/promtail/config/promtail-config.yml:/etc/promtail/promtail-config.yml:ro
depends_on:
- westworld-loki
networks:
- rainbow-net
westworld-jaeger:
image: jaegertracing/all-in-one:1.62.0
container_name: westworld-jaeger
hostname: westworld-jaeger
restart: unless-stopped
environment:
- COLLECTOR_OTLP_ENABLED=true
- SPAN_STORAGE_TYPE=badger
- BADGER_EPHEMERAL=false
- BADGER_DIRECTORY_VALUE=/badger/data
- BADGER_DIRECTORY_KEY=/badger/key
volumes:
- /Users/rohit89/Containers/westworld/volumes/jaeger/data:/badger
networks:
- rainbow-net
westworld-pgbouncer:
image: westworld-pgbouncer:latest
container_name: westworld-pgbouncer
hostname: westworld-pgbouncer
restart: unless-stopped
depends_on:
- westworld-postgres
networks:
- rainbow-net
networks:
rainbow-net:
name: rainbow-net
external: true