|
|
|
version: '3.6'
|
|
|
|
|
|
|
|
services:
|
|
|
|
# store datas in DB
|
|
|
|
influxdb:
|
|
|
|
image: influxdb:1.8-alpine
|
|
|
|
container_name: influxdb
|
|
|
|
restart: unless-stopped
|
|
|
|
env_file: .env
|
|
|
|
ports:
|
|
|
|
- '8086:8086'
|
|
|
|
volumes:
|
|
|
|
- ./influxdb_data:/var/lib/influxdb
|
|
|
|
- ./influxdb/imports:/imports
|
|
|
|
- ./influxdb/config:/etc/influxdb/
|
|
|
|
|
|
|
|
# Dashboard
|
|
|
|
grafana:
|
|
|
|
image: grafana/grafana:8.0.2
|
|
|
|
container_name: grafana
|
|
|
|
restart: unless-stopped
|
|
|
|
depends_on:
|
|
|
|
- influxdb
|
|
|
|
env_file: .env
|
|
|
|
links:
|
|
|
|
- influxdb
|
|
|
|
ports:
|
|
|
|
- '3000:3000'
|
|
|
|
volumes:
|
|
|
|
- ./grafana_data:/var/lib/grafana
|
|
|
|
- ./grafana/provisioning/:/etc/grafana/provisioning/
|
|
|
|
- ./grafana/dashboards/:/var/lib/grafana/dashboards/
|
|
|
|
|
|
|
|
# host metrics
|
|
|
|
telegraf:
|
|
|
|
image: telegraf:1.18-alpine
|
|
|
|
# image: telegraf:latest #(for amd64)
|
|
|
|
container_name: telegraf
|
|
|
|
restart: unless-stopped
|
|
|
|
env_file: .env
|
|
|
|
# for docker
|
|
|
|
hostname: ${HOSTNAME}
|
|
|
|
user: "telegraf:${DOCKER_GID}"
|
|
|
|
volumes:
|
|
|
|
- ./telegraf_data/telegraf.conf:/etc/telegraf/telegraf.conf:ro
|
|
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
depends_on:
|
|
|
|
- influxdb
|
|
|
|
links:
|
|
|
|
- influxdb
|
|
|
|
ports:
|
|
|
|
- '8125:8125/udp'
|