Невозможно подключиться к Grafana при запуске через docker-compose
Недавно я начал изучать докер. Я пишу приложение, используя Django 5.0.2, и хочу добавить Dashboard из grafana и prometheus. Prometheus работает, но я не могу подключиться к grafana через localhost:3050 (3000 уже занято)
вот мой docker-compose.yml
файл:
version: '3.8'
services:
prometheus:
image: prom/prometheus:latest
ports:
- "9090:9090" # This example maps host port 8080 to container port 9090 (Prometheus default)
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml:ro
grafana:
image: grafana/grafana
environment:
GF_INSTALL_PLUGINS: "grafana-clock-panel,grafana-simple-json-datasource"
restart: 'no'
volumes:
- grafana_data:/var/lib/grafana
ports:
- 3050:3050
depends_on:
- prometheus
network_mode: bridge
volumes:
prometheus_data: {}
grafana_data: {}
prometheus.yml
:
# my global config
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
# scrape_timeout is set to the global default (10s).
# Alertmanager configuration
alerting:
alertmanagers:
- static_configs:
- targets:
# - alertmanager:9093
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: "Legal"
static_configs:
- targets: ["host.docker.internal:8000"]
- job_name: "prometheus"
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ["localhost:9090"]
Как мне решить эту проблему? Я проверил logs
и все в порядке.
2024-02-16 21:24:22 logger=infra.usagestats t=2024-02-16T16:24:22.693717872Z level=info msg="Usage stats are ready to report"
Мой браузер выбрасывает Connection Refused
Ошибку
Порт Grafana по умолчанию 3000, а не 3050, поэтому в файле docker-compose.yml в разделе grafana должно быть указано 3000:3000, чтобы открыть порт 3000 контейнера службы Grafana на порт 3000 хоста. После этого вы сможете получить доступ к Grafana как http://localhost:3000 на хосте.