services: # --- ORCHESTRATION --- komodo-core: image: ghcr.io/moghtech/komodo-core:2 container_name: komodo-core restart: always ports: - "9120:9120" environment: - KOMODO_DATABASE_ADDRESS=100.109.59.41:27017 - KOMODO_LOCAL_AUTH=true - KOMODO_INIT_ADMIN_USERNAME=bray - KOMODO_INIT_ADMIN_PASSWORD=xabgus-Wiwqy3-difcyh - KOMODO_AUTH_RATE_LIMIT_DISABLED=true - KOMODO_HOST=https://core.bray.io volumes: - ./komodo:/config - /var/run/docker.sock:/var/run/docker.sock networks: - monitor-net # --- THE FRONT DOOR --- caddy: image: caddy:latest container_name: caddy restart: unless-stopped ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - caddy_data:/data - caddy_config:/config - ./mystic-home:/var/www/html # Corrected path to legal HTML files relative to this compose file - ./legal/html:/usr/share/caddy/legal:ro networks: - monitor-net # --- CUSTOM LANDING PAGE --- mystic-home: build: ./mystic-home container_name: mystic-home restart: always networks: - monitor-net # --- MONITORING --- prometheus: image: prom/prometheus:latest container_name: prometheus restart: always ports: - "9090:9090" volumes: - ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml - prometheus_data:/prometheus command: - '--config.file=/etc/prometheus/prometheus.yml' - '--storage.tsdb.path=/prometheus' networks: - monitor-net grafana: image: grafana/grafana:latest container_name: grafana restart: always environment: - GF_SERVER_ROOT_URL=https://grafana.bray.io - GF_SERVER_SERVE_FROM_SUB_PATH=false ports: - "3001:3000" volumes: - grafana_data:/var/lib/grafana networks: - monitor-net # --- EXPORTERS --- node-exporter: image: prom/node-exporter:latest container_name: node-exporter restart: always ports: - "9110:9100" networks: - monitor-net cadvisor: image: gcr.io/cadvisor/cadvisor:latest container_name: cadvisor restart: always command: - '--housekeeping_interval=30s' - '--docker_only=true' deploy: resources: limits: cpus: '0.50' memory: 256M ports: - "8081:8080" volumes: - /:/rootfs:ro - /var/run:/var/run:ro - /sys:/sys:ro - /var/lib/docker/:/var/lib/docker:ro - /dev/disk/:/dev/disk:ro networks: - monitor-net networks: monitor-net: external: true volumes: prometheus_data: grafana_data: caddy_data: caddy_config: