docker-compose.external-observability.yaml 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. services:
  2. postgres:
  3. image: ${POSTGRES_IMAGE:-docker.1ms.run/library/postgres:16}
  4. container_name: maas-base-db
  5. restart: unless-stopped
  6. environment:
  7. POSTGRES_USER: gpustack
  8. POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-gpustack}
  9. POSTGRES_DB: gpustack
  10. volumes:
  11. - postgres-data:/var/lib/postgresql/data
  12. healthcheck:
  13. test: ["CMD-SHELL", "pg_isready -U gpustack"]
  14. interval: 5s
  15. timeout: 5s
  16. retries: 5
  17. maas-base-server:
  18. build:
  19. context: ..
  20. dockerfile: pack/Dockerfile
  21. container_name: maas-base-server
  22. restart: unless-stopped
  23. depends_on:
  24. postgres:
  25. condition: service_healthy
  26. environment:
  27. GPUSTACK_DATABASE_URL: postgresql://gpustack:${POSTGRES_PASSWORD:-gpustack}@postgres:5432/gpustack
  28. GPUSTACK_DISABLE_BUILTIN_OBSERVABILITY: "true"
  29. GPUSTACK_GRAFANA_URL: ${GPUSTACK_GRAFANA_URL:-}
  30. volumes:
  31. - maas-base-data:/var/lib/gpustack
  32. ports:
  33. - "80:80"
  34. - "10161:10161"
  35. prometheus:
  36. image: ${PROMETHEUS_IMAGE:-docker.1ms.run/prom/prometheus:latest}
  37. container_name: maas-base-prometheus
  38. restart: unless-stopped
  39. ports:
  40. - "9090:9090"
  41. command:
  42. - '--config.file=/etc/prometheus/prometheus.yml'
  43. - '--web.enable-remote-write-receiver'
  44. volumes:
  45. - ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml:ro
  46. - prom_data:/prometheus
  47. grafana:
  48. image: ${GRAFANA_IMAGE:-docker.1ms.run/grafana/grafana:latest}
  49. container_name: maas-base-grafana
  50. restart: unless-stopped
  51. ports:
  52. - "3100:3100"
  53. environment:
  54. GF_SERVER_HTTP_PORT: "3100"
  55. GF_SECURITY_ADMIN_USER: admin
  56. GF_SECURITY_ADMIN_PASSWORD: ${GRAFANA_PASSWORD:-grafana}
  57. GF_FEATURE_TOGGLES_ENABLE: flameGraph traceqlSearch traceQLStreaming correlations metricsSummary traceqlEditor traceToMetrics traceToProfiles
  58. volumes:
  59. - ./grafana/grafana_provisioning:/etc/grafana/provisioning:ro
  60. - ./grafana/grafana_dashboards:/etc/dashboards:ro
  61. volumes:
  62. postgres-data: {}
  63. prom_data: {}
  64. maas-base-data: {}