docker-compose编写promethus+Grafana监控
时间: 2023-05-24 19:03:52 浏览: 249
docker-compose快速搭建 Prometheus+Grafana监控系统.docx
5星 · 资源好评率100%
答:以下是一个示例的docker-compose.yml文件,用于启动Prometheus和Grafana来监控一个或多个应用程序:
```
version: '3'
services:
prometheus:
image: prom/prometheus
container_name: prometheus
ports:
- "9090:9090"
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
command:
- '--config.file=/etc/prometheus/prometheus.yml'
restart: always
grafana:
image: grafana/grafana
container_name: grafana
depends_on:
- prometheus
ports:
- "3000:3000"
environment:
GF_SERVER_ROOT_URL: http://localhost:3000
GF_SECURITY_ADMIN_USER: admin
GF_SECURITY_ADMIN_PASSWORD: admin
volumes:
- ./grafana-data:/var/lib/grafana
restart: always
```
在该docker-compose.yml文件中,我们创建了两个服务:prometheus和grafana。Prometheus服务使用Prometheus Docker映像,并将端口映射到9090。它还将/prometheus.yml文件作为挂载卷传递给容器。在启动容器时,我们使用命令行参数来指定/config.file=/etc/prometheus/prometheus.yml。
Grafana服务程序使用Grafana Docker映像,并依赖于prometheus服务。Grafana服务映射端口3000,并将以下环境变量传递给容器:GF_SERVER_ROOT_URL:使用localhost:3000 (在该容器中内部)作为grafana的根URL,GF_SECURITY_ADMIN_USER和GF_SECURITY_ADMIN_PASSWORD管理Grafana管理员的凭据。此服务还挂载了grafana-data目录,以便可以在重启容器时保留所有Grafana的设置。
最后,我们定义了restart: always参数以确保容器在退出时自动重新启动。
阅读全文