CoolFace
Apppublic

OnyxMunk/AudioForge

sourceHugging Facemitupdated 8mo agoView on Hugging Face
0likes
docker-compose.prod.yml91 linesDownload Raw Back to root
1# ============================================
2# AudioForge - Production Deployment
3# ============================================
4# Enhanced production configuration with:
5# - Nginx reverse proxy
6# - SSL/TLS support
7# - Monitoring stack (Prometheus + Grafana)
8# - Log aggregation
9
10version: '3.8'
11
12services:
13  # ============================================
14  # Reverse Proxy & Load Balancer
15  # ============================================
16  nginx:
17    image: nginx:alpine
18    container_name: audioforge-nginx
19    restart: unless-stopped
20    ports:
21      - "8081:80"
22      - "443:443"
23    volumes:
24      - ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
25      - ./nginx/ssl:/etc/nginx/ssl:ro
26    depends_on:
27      - backend
28      - frontend
29    networks:
30      - audioforge-network
31    labels:
32      com.audioforge.service: "proxy"
33
34  # ============================================
35  # Monitoring - Prometheus
36  # ============================================
37  prometheus:
38    image: prom/prometheus:latest
39    container_name: audioforge-prometheus
40    restart: unless-stopped
41    ports:
42      - "9090:9090"
43    volumes:
44      - ./monitoring/prometheus.yml:/etc/prometheus/prometheus.yml:ro
45      - prometheus_data:/prometheus
46    command:
47      - '--config.file=/etc/prometheus/prometheus.yml'
48      - '--storage.tsdb.path=/prometheus'
49      - '--web.console.libraries=/usr/share/prometheus/console_libraries'
50      - '--web.console.templates=/usr/share/prometheus/consoles'
51    networks:
52      - audioforge-network
53    labels:
54      com.audioforge.service: "monitoring"
55
56  # ============================================
57  # Monitoring - Grafana
58  # ============================================
59  grafana:
60    image: grafana/grafana:latest
61    container_name: audioforge-grafana
62    restart: unless-stopped
63    ports:
64      - "3001:3000"
65    environment:
66      GF_SECURITY_ADMIN_PASSWORD: admin
67      GF_USERS_ALLOW_SIGN_UP: "false"
68    volumes:
69      - grafana_data:/var/lib/grafana
70      - ./monitoring/grafana/dashboards:/etc/grafana/provisioning/dashboards:ro
71      - ./monitoring/grafana/datasources:/etc/grafana/provisioning/datasources:ro
72    depends_on:
73      - prometheus
74    networks:
75      - audioforge-network
76    labels:
77      com.audioforge.service: "monitoring"
78
79volumes:
80  prometheus_data:
81    driver: local
82    name: audioforge-prometheus-data
83  
84  grafana_data:
85    driver: local
86    name: audioforge-grafana-data
87
88networks:
89  audioforge-network:
90    external: true
91