我正在开发一些需要Prometheus在重新启动之间保留其数据的东西。遵循指示

$ docker volume create a-new-volume
$ docker run \
    --publish 9090:9090 \
    --volume a-new-volume:/prometheus-data \
    --volume "$(pwd)"/prometheus.yml:/etc/prometheus/prometheus.yml \
    prom/prometheus

我在主机上正确的目录中有一个有效的prometheus.yml,Prometheus正在从容器中读取它。目前,我仅抓取几个HTTP端点以进行测试。

但是当我重新启动容器时,它是空的,上一次运行没有数据。我的docker run ...命令中缺少什么来将数据持久保存到a-new-volume卷中?

最佳答案

使用默认数据目录/prometheus。为此,请使用以下行代替命令中的内容:

...
--volume a-new-volume:/prometheus \
...

在这里找到:https://github.com/prometheus/prometheus/blob/master/Dockerfile

令人惊讶的是image docs中没有提到

08-28 04:02