raspberrypi-monitoring.yml 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. version: "2.4"
  2. services:
  3. cadvisor:
  4. command:
  5. - '--docker_only=true'
  6. - '--housekeeping_interval=30s'
  7. - '--disable_metrics=accelerator,cpu_topology,disk,memory_numa,tcp,udp,percpu,sched,process,hugetlb,referenced_memory,resctrl,cpuset,advtcp,memory_numa'
  8. - '--store_container_labels=false'
  9. - '--event_storage_event_limit=default=0'
  10. - '--event_storage_age_limit=default=0'
  11. container_name: monitoring-cadvisor
  12. devices:
  13. - /dev/kmsg:/dev/kmsg
  14. expose:
  15. - 8080
  16. hostname: rpi-cadvisor
  17. image: zcube/cadvisor:latest
  18. ipc: shareable
  19. networks:
  20. - rpimonitor_default
  21. privileged: true
  22. restart: unless-stopped
  23. security_opt:
  24. - label=disable
  25. volumes:
  26. - /:/rootfs:ro
  27. - /var/run:/var/run:rw
  28. - /sys:/sys:ro
  29. - /var/lib/docker/:/var/lib/docker:ro
  30. - /etc/machine-id:/etc/machine-id:ro
  31. grafana:
  32. container_name: monitoring-grafana
  33. environment:
  34. - GF_USERS_ALLOW_SIGN_UP=false
  35. - GF_PATHS_CONFIG=/etc/grafana/grafana.ini
  36. - GF_PATHS_DATA=/var/lib/grafana
  37. - GF_PATHS_HOME=/usr/share/grafana
  38. - GF_PATHS_LOGS=/var/log/grafana
  39. - GF_PATHS_PLUGINS=/var/lib/grafana/plugins
  40. - GF_PATHS_PROVISIONING=/etc/grafana/provisioning
  41. hostname: rpi-grafana
  42. image: grafana/grafana:latest
  43. networks:
  44. - rpimonitor_default
  45. ports:
  46. - 3000:3000
  47. restart: unless-stopped
  48. volumes:
  49. # to be modified depending on your needs
  50. - /portainer/Files/AppData/Config/grafana/data:/var/lib/grafana
  51. - /portainer/Files/AppData/Config/grafana/grafana.ini:/etc/grafana/grafana.ini
  52. - /portainer/Files/AppData/Config/grafana/provisioning:/etc/grafana/provisioning
  53. node-exporter:
  54. container_name: monitoring-node-exporter
  55. expose:
  56. - 9100
  57. hostname: rpi-exporter
  58. image: prom/node-exporter:latest
  59. networks:
  60. - rpimonitor_default
  61. restart: unless-stopped
  62. prometheus:
  63. command:
  64. - '--config.file=/etc/prometheus/prometheus.yml'
  65. - '--storage.tsdb.path=/prometheus'
  66. - '--storage.tsdb.retention.time=${PROMETHEUS_RETENTION:-15d}'
  67. container_name: monitoring-prometheus
  68. expose:
  69. - 9090
  70. hostname: rpi-prom
  71. image: prom/prometheus:latest
  72. user: root
  73. networks:
  74. - rpimonitor_default
  75. restart: unless-stopped
  76. volumes:
  77. # to be modified depending on your needs
  78. - /portainer/Files/AppData/Config/prometheus/data:/prometheus
  79. - /portainer/Files/AppData/Config/prometheus/config:/etc/prometheus/
  80. links:
  81. - cadvisor:cadvisor
  82. - node-exporter:node-exporter
  83. networks:
  84. rpimonitor_default: