94 lines
2.7 KiB
YAML
94 lines
2.7 KiB
YAML
---
|
|
services:
|
|
grafana:
|
|
image: grafana/grafana-oss:latest
|
|
container_name: grafana
|
|
ports:
|
|
- "3000:3000"
|
|
volumes:
|
|
- grafana-data:/var/lib/grafana
|
|
environment:
|
|
- GF_SECURITY_ALLOW_EMBEDDING=true
|
|
- GF_AUTH_ANONYMOUS_ENABLED=true
|
|
restart: unless-stopped
|
|
|
|
prometheus:
|
|
image: prom/prometheus:latest
|
|
container_name: prometheus
|
|
ports:
|
|
- "9090:9090"
|
|
volumes:
|
|
- /etc/prometheus:/etc/prometheus
|
|
- prometheus-data:/prometheus
|
|
restart: unless-stopped
|
|
command:
|
|
- "--config.file=/etc/prometheus/prometheus.yml"
|
|
|
|
influxdb:
|
|
container_name: influxdb
|
|
image: influxdb:2.7.0
|
|
ports:
|
|
- "8086:8086"
|
|
volumes:
|
|
- influxdb-data:/var/lib/influxdb2
|
|
- /etc/influxdb2:/etc/influxdb2
|
|
restart:
|
|
unless-stopped
|
|
|
|
# (Optional) If you're using self-signed certs
|
|
# - /etc/ssl/cert.pem/:/etc/ssl/cert.pem
|
|
# - /etc/ssl/cert-key.pem/:/etc/ssl/cert-key.pem
|
|
# (Optional) If you're using self-signed certs
|
|
# command: influxd --tls-cert=/etc/ssl/cert.pem --tls-key=/etc/ssl/cert-key.pem
|
|
|
|
# (Optional) Automatic Setup
|
|
# environment:
|
|
# - DOCKER_INFLUXDB_INIT_MODE=setup
|
|
# - DOCKER_INFLUXDB_INIT_USERNAME=my-user
|
|
# - DOCKER_INFLUXDB_INIT_PASSWORD=my-password
|
|
# - DOCKER_INFLUXDB_INIT_ORG=my-org
|
|
# - DOCKER_INFLUXDB_INIT_BUCKET=my-bucket
|
|
# # (Optional) Configure Data Retention
|
|
# - DOCKER_INFLUXDB_INIT_RETENTION=1w
|
|
# # (Optional) Admin Token
|
|
# - DOCKER_INFLUXDB_INIT_ADMIN_TOKEN=my-super-secret-auth-token
|
|
|
|
# speedflux:
|
|
# build: .
|
|
# environment:
|
|
# - NAMESPACE= None
|
|
# - INFLUX_DB_ADDRESS=influxdb
|
|
# - INFLUX_DB_PORT=8086
|
|
# - INFLUX_DB_USER=[db username]
|
|
# - INFLUX_DB_PASSWORD=[db password]
|
|
# - INFLUX_DB_DATABASE=speedtest
|
|
# - INFLUX_DB_TAGS= # See https://github.com/breadlysm/speedtest-to-influxdb#tag-options for details
|
|
# - SPEEDTEST_INTERVAL=150 # Minutes between speedtest updates.
|
|
# - PING_INTERVAL=60 # Seconds between ping updates
|
|
# - PING_TARGETS=1.1.1.1, 8.8.8.8 # csv of hostnames to ping
|
|
# - LOG_TYPE=info
|
|
# image: ghcr.io/breadlysm/speedflux:latest
|
|
|
|
nut-exporter:
|
|
container_name: nut-exporter
|
|
image: hon95/prometheus-nut-exporter:1
|
|
environment:
|
|
- TZ=America/Detroit
|
|
- HTTP_PATH=/metrics
|
|
# Defaults
|
|
#- RUST_LOG=info
|
|
#- HTTP_PORT=9995
|
|
#- HTTP_PATH=/nut
|
|
#- LOG_REQUESTS_CONSOLE=false
|
|
#- PRINT_METRICS_AND_EXIT=false
|
|
restart: unless-stopped
|
|
ports:
|
|
- "9995:9995/tcp"
|
|
|
|
volumes:
|
|
grafana-data:
|
|
driver: local
|
|
prometheus-data:
|
|
driver: local
|
|
influxdb-data:
|