Prometheus Docker - 连接到外部机器

Prometheus Docker - Connecting to external machine

我有两台虚拟机,一台托管 Prometheus、Grafana 等 192.15.15.10,另一台托管来自一系列 Docker 容器的应用程序 192.15.15.20

我已将 Docker daemon.json 配置为包含:

{
   "metrics-addr" : "127.0.0.1:9323",
   "experimental" : true
}

我的 Prometheus.yml 现在包含:

- job_name: 'docker'
  static_configs:
  - targets: ['192.15.15.20:9323']

这是在尝试访问另一台机器上的指标端点。但是,由于此配置是在 docker 容器内执行的,因此容器不知道该 IP 也无法访问它(它不在 docker 网络上)。

我怎样才能做到这一点?是否有代理设置或我可以使用的东西,或者以某种方式使用 docker 网关 IP?

问题是您的 docker 仅在本地主机上侦听。

metrics-addr 更改为在 0.0.0.0:9323 上收听。