docker-compose.yaml 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. version: "3.8"
  2. services:
  3. prometheus:
  4. image: prom/prometheus
  5. container_name: prometheus
  6. volumes:
  7. - ./yml/prometheus.yml:/etc/prometheus/prometheus.yml
  8. - ./prometheus:/prometheus
  9. ports:
  10. - "9090:9090"
  11. networks:
  12. - monitor-net
  13. restart: always
  14. grafana:
  15. image: grafana/grafana
  16. container_name: grafana
  17. restart: always
  18. ports:
  19. - "3000:3000"
  20. volumes:
  21. - ./grafana:/var/lib/grafana
  22. - /etc/localtime:/etc/localtime
  23. environment:
  24. GF_EXPLORE_ENABLED: "true"
  25. GF_SECURITY_ADMIN_PASSWORD: "prmonitor@123"
  26. GF_DATABASE_URL: "mysql://root:prmonitor@123@mysql832:3306/grafana"
  27. GF_VIEWER_LANGUAGE: "zh-Hans"
  28. depends_on:
  29. - prometheus
  30. networks:
  31. - monitor-net
  32. mysql:
  33. image: mysql:8.0.32
  34. container_name: mysql832
  35. hostname: mysql832
  36. ports:
  37. - "3310:3306"
  38. environment:
  39. TZ: Asia/Shanghai
  40. LANG: en_US.UTF-8
  41. MYSQL_ROOT_PASSWORD: prmonitor@123
  42. MYSQL_DATABASE: "grafana"
  43. command:
  44. --default-authentication-plugin=mysql_native_password
  45. --character-set-server=utf8mb4
  46. --collation-server=utf8mb4_general_ci
  47. --lower_case_table_names=1
  48. volumes:
  49. - ./mysql/my.cnf:/etc/my.cnf
  50. - ./mysql/data:/var/lib/mysql
  51. networks:
  52. - monitor-net
  53. restart: always
  54. node-exporter:
  55. image: prom/node-exporter
  56. container_name: monitor-node
  57. restart: always
  58. ports:
  59. - "9100:9100"
  60. networks:
  61. - monitor-net
  62. networks:
  63. monitor-net:
  64. driver: bridge