services: symphony-manager: container_name: manager build: context: ./SymphonyManager dockerfile: Dockerfile ports: - "8081:8081" networks: - symphony-network symphony-producer: container_name: producer build: context: ./SymphonyProducer dockerfile: Dockerfile ports: - "8082:8082" networks: - symphony-network rabbitmq: image: "rabbitmq:management" container_name: rabbitmq ports: - "5672:5672" - "15672:15672" - "15692:15692" environment: - RABBITMQ_DEFAULT_USER=symphony - RABBITMQ_DEFAULT_PASS=symphony - RABBITMQ_NODENAME=rabbit@rabbitmq - RABBITMQ_PROMETHEUS_RETENTION_POLICY=1h command: > sh -c " rabbitmq-plugins enable --offline rabbitmq_prometheus && rabbitmq-server" volumes: - ./config/rabbitmq/rabbit.conf:/etc/rabbitmq/rabbitmq.conf:ro networks: - symphony-network restart: always prometheus: image: prom/prometheus container_name: prometheus ports: - "9090:9090" volumes: - ./config/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml:ro networks: - symphony-network grafana: image: grafana/grafana container_name: grafana ports: - "3000:3000" volumes: - ./config/grafana/provisioning:/etc/grafana/provisioning - ./config/grafana/provisioning/dashboards:/etc/grafana/provisioning/dashboards environment: - GF_SECURITY_ADMIN_USER=symphony - GF_SECURITY_ADMIN_PASSWORD=symphony networks: - symphony-network node-exporter: image: prom/node-exporter:latest container_name: node-exporter ports: - "9100:9100" command: - "--no-collector.hwmon" volumes: - /proc:/host/proc:ro - /sys:/host/sys:ro - /:/rootfs:ro restart: always networks: - symphony-network networks: symphony-network: driver: bridge