version: '3.7' services: app: build: app container_name: sentiment-summarize-youtube-comments-1 ports: - "8001:8000" volumes: - ./app:/home/user/app depends_on: - prometheus networks: - custom app2: build: app container_name: sentiment-summarize-youtube-comments-2 ports: - "8002:8000" volumes: - ./app:/home/user/app depends_on: - prometheus networks: - custom nginx: image: nginx:latest container_name: nginx ports: - "8000:80" volumes: - ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf depends_on: - app networks: - custom prometheus: image: prom/prometheus container_name: prometheus volumes: - ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml ports: - "9090:9090" networks: - custom grafana: image: grafana/grafana container_name: grafana ports: - "3000:3000" environment: - GF_SECURITY_ADMIN_PASSWORD=admin depends_on: - prometheus networks: - custom tests: build: context: ./tests dockerfile: Dockerfile volumes: - ./app:/home/user/app depends_on: - app command: pytest tests networks: custom: driver: bridge