我有一个在 docker-compose 中运行 Prometheus 的新服务器。我希望能够重新加载配置文件(prometheus.yml)而不必停止和启动容器。
当然,因为我将 prometheus 的存储持久化在一个卷中,所以停止和启动并不是真正的问题,但它似乎有点矫枉过正,尤其是因为 prometheus 本身有一个如此方便的 api 来重新加载配置。
我看到其他人有类似的问题(例如在这里),但我一直无法让这些解决方案对我有用。也许我在俯瞰那里的东西。
docker-compose.yml
version: "3"
services:
grafana:
restart: always
container_name: grafana
image: grafana/grafana:6.2.1
ports:
- 3000:3000
volumes:
- grafanadata:/var/lib/grafana
prometheus:
restart: always
container_name: prometheus
image: prom/prometheus:v2.10.0
privileged: true
volumes:
- ./configuration/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
- prometheusdata:/prometheus
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--web.enable-admin-api'
- '--web.enable-lifecycle'
ports:
- 9090:9090
node:
restart: always
container_name: node
image: prom/node-exporter:v0.18.0
ports:
- 9100:9100
volumes:
grafanadata:
prometheusdata:
Run Code Online (Sandbox Code Playgroud)
唉,我的结果..
当我运行curl -X POST http://localhost:9090/-/reloaddocker-compose 日志时,会给出:
prometheus | level=info …Run Code Online (Sandbox Code Playgroud)