Docker 普罗米修斯-目标连接被拒绝
我正试着用一个普罗米修斯容器从cAdvisor上获取数据 这是我的普罗米修斯Docker 普罗米修斯-目标连接被拒绝,docker,docker-compose,monitoring,prometheus,cadvisor,Docker,Docker Compose,Monitoring,Prometheus,Cadvisor,我正试着用一个普罗米修斯容器从cAdvisor上获取数据 这是我的普罗米修斯 global: scrape_interval: 10s evaluation_interval: 10s scrape_configs: - job_name: "prometheus" static_configs: - targets: ["localhost:9090"] - job_name: "docker" static_configs: - targets
global:
scrape_interval: 10s
evaluation_interval: 10s
scrape_configs:
- job_name: "prometheus"
static_configs:
- targets: ["localhost:9090"]
- job_name: "docker"
static_configs:
- targets: ['localhost:9323']
- job_name: "cadvisor"
scrape_interval: 5s
static_configs:
- targets: ['localhost:7070']
labels:
alias: "cadvisor"
还有我的docker-compose.yml:
version: "3.5"
services:
app:
container_name: app
build: "./app"
restart: always
volumes:
- ./app:/app
depends_on:
- db
links:
- db
ports:
- 8080:8080
db:
container_name: db
image: postgres
restart: always
volumes:
- ./data/postgres:/var/lib/postgresql/data
environment:
- POSTGRES_DB=articlesdb
- POSTGRES_USER=dbuser
- POSTGRES_PASSWORD=dbpassword
ports:
- "5432:5432"
prometheus:
container_name: prometheus
image: prom/prometheus:latest
#build:
# context: ./prometheus
# dockerfile: Dockerfile
ports:
- 9090:9090
volumes:
- ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
command:
- '--config.file=/etc/prometheus/prometheus.yml'
depends_on:
- cadvisor
cadvisor:
image: google/cadvisor:latest
container_name: cadvisor
ports:
- 7070:8080
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
depends_on:
- db
在targets部分,Prometheus说与cAdvisor容器和Docker守护进程的连接是有效的,而Prometheus与自身的连接是有效的。
我可以通过cURL或在浏览器上访问localhost:7070/metrics上的cAdvisor。问题可能是什么,我如何解决它?在docker compose文件中,您将cAdvisor服务命名为“cAdvisor”,以便在docker网络中可以通过DNS名称cAdvisor访问该服务。更改您的prometheus.yml static_配置,如下所示:
- job_name: "cadvisor"
scrape_interval: 5s
static_configs:
- targets: ['cadvisor:7070']
labels:
alias: "cadvisor"
在docker compose文件中,您将cAdvisor服务命名为“cAdvisor”,因此在docker网络中,可以通过DNS名称cAdvisor访问该服务。更改您的prometheus.yml static_配置,如下所示:
- job_name: "cadvisor"
scrape_interval: 5s
static_configs:
- targets: ['cadvisor:7070']
labels:
alias: "cadvisor"