docker-compose.yml

  1. version: '2'
  2. services:
  3. pro_mysql:
  4. container_name: pro_mysql
  5. image: mysql
  6. ports:
  7. - "3309:3306"
  8. environment:
  9. - MYSQL_ROOT_PASSWORD=password
  10. - MYSQL_DATABASE=database
  11. pro_mysql_exporter:
  12. container_name: pro_mysql_exporter
  13. image: prom/mysqld-exporter
  14. ports:
  15. - "9104:9104"
  16. environment:
  17. - DATA_SOURCE_NAME=root:password@(pro_mysql:3306)/database
  18. prometheus:
  19. container_name: prometheus
  20. image: prom/prometheus
  21. volumes:
  22. - /root/Prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
  23. ports:
  24. - "20001:9090"
  25. grafana:
  26. container_name: grafana
  27. image: grafana/grafana
  28. environment:
  29. - GF_SERVER_ROOT_URL=http://82.156.245.74:20002
  30. - GF_SECURITY_ADMIN_PASSWORD=admin
  31. ports:
  32. - "20002:3000"

prometheus.yml

global:
  scrape_interval:     15s
  evaluation_interval: 15s

alerting:
  alertmanagers:
  - static_configs:
    - targets:

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
      - targets: ['prometheus:9090']

  - job_name: 'mysql'
    scrape_interval: 5s
    static_configs:
      - targets: ['pro_mysql_exporter:9104']

Run

docker network create mysql-monitor #建立一个监控用的 docker network
docker-compose -f docker-compose.yml -p mysql-monitor up -d

访问服务器 http://82.156.245.74:20002/ 本地主机或者服务器 IP,用户名与密码均为:admin
image.png

配置

image.png
image.png
image.png
image.png
点击 import 引入文档 MySQL.json

出现以下页面代表运行成功image.png