| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| services: |
| pushgateway: |
| image: prom/pushgateway:latest |
| container_name: pushgateway |
| command: |
| - "--web.config.file=/etc/pushgateway/web.yml" |
| ports: |
| - "9091:9091" |
| configs: |
| - source: pushgateway-web-config |
| target: /etc/pushgateway/web.yml |
| restart: always |
| networks: |
| - bifrost_pushgateway_network |
|
|
| prometheus-pg: |
| image: prom/prometheus:latest |
| container_name: prometheus-pg |
| depends_on: |
| - pushgateway |
| ports: |
| - "9090:9090" |
| configs: |
| - source: prometheus-config |
| target: /etc/prometheus/prometheus.yml |
| restart: always |
| networks: |
| - bifrost_pushgateway_network |
|
|
| grafana-pg: |
| image: grafana/grafana:latest |
| container_name: grafana-pg |
| depends_on: |
| - prometheus-pg |
| ports: |
| - "4000:3000" |
| environment: |
| GF_SECURITY_ADMIN_PASSWORD: "admin" |
| volumes: |
| - ./sample-grafana-dashboard.json:/var/lib/grafana/dashboards/bifrost-dashboard.json |
| configs: |
| - source: grafana-datasources |
| target: /etc/grafana/provisioning/datasources/datasources.yml |
| - source: grafana-dashboards |
| target: /etc/grafana/provisioning/dashboards/dashboards.yml |
| restart: always |
| networks: |
| - bifrost_pushgateway_network |
|
|
| networks: |
| bifrost_pushgateway_network: |
| driver: bridge |
|
|
| configs: |
| pushgateway-web-config: |
| content: | |
| basic_auth_users: |
| # admin:admin (bcrypt hash) |
| admin: "$$2y$$10$$xfmgGnMSClSfhHo/dTsVmexbS1FJ5zZfEmvKm4F/ZpYul9aewIXZ." |
| |
| prometheus-config: |
| content: | |
| global: |
| scrape_interval: 5s |
| scrape_configs: |
| - job_name: "pushgateway" |
| honor_labels: true |
| basic_auth: |
| username: admin |
| password: admin |
| static_configs: |
| - targets: ["pushgateway:9091"] |
| |
| grafana-datasources: |
| content: | |
| apiVersion: 1 |
| datasources: |
| - name: Prometheus |
| type: prometheus |
| access: proxy |
| url: http://prometheus-pg:9090 |
| isDefault: true |
| editable: true |
| |
| grafana-dashboards: |
| content: | |
| apiVersion: 1 |
| providers: |
| - name: 'default' |
| orgId: 1 |
| folder: '' |
| type: file |
| disableDeletion: false |
| updateIntervalSeconds: 10 |
| allowUiUpdates: true |
| options: |
| path: /var/lib/grafana/dashboards |
| foldersFromFilesStructure: false |
| |