224 lines
6.6 KiB
YAML
Executable File
224 lines
6.6 KiB
YAML
Executable File
#volumes:
|
|
# netdataconfig:
|
|
# netdatalib:
|
|
# netdatacache:
|
|
|
|
version: "3"
|
|
|
|
services:
|
|
beszel:
|
|
image: docker.io/henrygd/beszel:latest
|
|
container_name: beszel
|
|
restart: unless-stopped
|
|
ports:
|
|
- 8090:8090
|
|
volumes:
|
|
- /mnt/flash1/podman/monitoring/beszel/data:/beszel_data
|
|
- ./beszel_socket:/beszel_socket
|
|
|
|
beszel-agent:
|
|
image: docker.io/henrygd/beszel-agent
|
|
container_name: beszel-agent
|
|
restart: unless-stopped
|
|
network_mode: host
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
- /mnt/flash1/podman/monitoring/beszel_agent/data:/var/lib/beszel-agent
|
|
# monitor other disks / partitions by mounting a folder in /extra-filesystems
|
|
# - /mnt/disk/.beszel:/extra-filesystems/sda1:ro
|
|
environment:
|
|
LISTEN: 45876
|
|
KEY: 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAUf2dTtQj9WJesH11kFD7/qzMIubcHzuZwN92XnHpfB'
|
|
TOKEN: 1ac0ad26-9c32-4c45-b02b-c4aa2f8eb40c
|
|
HUB_URL: https://beszel.liphlink.xyz
|
|
|
|
dozzle:
|
|
image: docker.io/amir20/dozzle:latest
|
|
container_name: dozzle
|
|
volumes:
|
|
- /run/podman/podman.sock:/var/run/docker.sock:ro
|
|
ports:
|
|
- "8078:8080"
|
|
environment:
|
|
- DOZZLE_LEVEL=info
|
|
- DOZZLE_TAILSIZE=300
|
|
restart: unless-stopped
|
|
|
|
pulse:
|
|
image: docker.io/rcourtman/pulse:latest
|
|
container_name: pulse
|
|
restart: unless-stopped
|
|
ports:
|
|
- "${PULSE_PORT:-7655}:7655"
|
|
volumes:
|
|
- pulse-data:/data
|
|
# Secure temperature monitoring via host-side proxy (requires setup - see docs)
|
|
# Uncomment after installing pulse-sensor-proxy on host with --standalone flag
|
|
# Mount is read-only (:ro) for security - proxy uses SO_PEERCRED for access control
|
|
# - /run/pulse-sensor-proxy:/run/pulse-sensor-proxy:ro
|
|
environment:
|
|
- TZ=${TZ:-UTC}
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:7655/api/health"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
netdata:
|
|
container_name: netdata
|
|
image: docker.io/netdata/netdata:latest
|
|
ports:
|
|
- '19999:19999'
|
|
volumes:
|
|
- /mnt/flash1/podman/monitoring/netdata/data:/etc/netdata
|
|
- /mnt/flash1/podman/monitoring/netdata/lib:/var/lib/netdata
|
|
- /mnt/flash1/podman/monitoring/netdata/cache:/var/cache/netdata
|
|
- '/etc/passwd:/host/etc/passwd:ro'
|
|
- '/etc/group:/host/etc/group:ro'
|
|
- '/proc:/host/proc:ro'
|
|
- '/sys:/host/sys:ro'
|
|
- '/etc/os-release:/host/etc/os-release:ro'
|
|
- '/etc/localtime:/etc/localtime:ro'
|
|
- '/var/log:/host/var/log:ro'
|
|
- '/var/run/docker.sock:/var/run/docker.sock:ro'
|
|
- '/run/dbus:/run/dbus:ro'
|
|
restart: unless-stopped
|
|
cap_add:
|
|
- SYS_PTRACE
|
|
- SYS_ADMIN
|
|
security_opt:
|
|
- apparmor=unconfined
|
|
#networks: ["nginx_nginx_network"] #optional
|
|
|
|
uptime-kuma:
|
|
image: docker.io/louislam/uptime-kuma:latest
|
|
container_name: uptime-kuma
|
|
volumes:
|
|
- ./data/uptime-kuma:/app/data
|
|
ports:
|
|
- "3001:3001" # <Host Port>:<Container Port>
|
|
restart: always
|
|
|
|
volumes:
|
|
uptime-kuma:
|
|
netdataconfig:
|
|
netdatalib:
|
|
netdatacache:
|
|
pulse-data:
|
|
#
|
|
# loki:
|
|
# container_name: loki
|
|
# image: docker.io/grafana/loki:main
|
|
# networks:
|
|
# - grafana-monitoring
|
|
# volumes:
|
|
# - ./data/loki/:/etc/loki
|
|
# ports:
|
|
# - "3100:3100"
|
|
# restart: unless-stopped
|
|
# command: -config.file=./config/loki/loki-config.yml
|
|
#
|
|
# promtail:
|
|
# container_name: promtail
|
|
# image: docker.io/grafana/promtail:main
|
|
# networks:
|
|
# - grafana-monitoring
|
|
# volumes:
|
|
# - /var/log:/var/log
|
|
# - ./data/promtail/:/etc/promtail
|
|
# ports:
|
|
# - "1514:1514" # this is only needed if you are going to send syslogs
|
|
# restart: unless-stopped
|
|
# command: -config.file=./config/promtail/promtail-config.yml
|
|
#
|
|
# grafana:
|
|
# container_name: grafana
|
|
# image: docker.io/grafana/grafana-oss:main-ubuntu
|
|
# user: "0"
|
|
# networks:
|
|
# - grafana-monitoring
|
|
# - proxy
|
|
# volumes:
|
|
# - ./data/grafana/:/var/lib/grafana
|
|
# restart: unless-stopped
|
|
# ports:
|
|
# - 3000:3000
|
|
# labels:
|
|
# - "traefik.enable=true"
|
|
# - "traefik.http.routers.grafana.entrypoints=http"
|
|
# - "traefik.http.routers.grafana.rule=Host(`grafana.jimsgarage.co.uk`)"
|
|
# - "traefik.http.routers.grafana.middlewares=default-whitelist@file"
|
|
# - "traefik.http.middlewares.grafana-https-redirect.redirectscheme.scheme=https"
|
|
# - "traefik.http.routers.grafana.middlewares=grafana-https-redirect"
|
|
# - "traefik.http.routers.grafana-secure.entrypoints=https"
|
|
# - "traefik.http.routers.grafana-secure.rule=Host(`grafana.jimsgarage.co.uk`)"
|
|
# - "traefik.http.routers.grafana-secure.tls=true"
|
|
# - "traefik.http.routers.grafana-secure.service=grafana"
|
|
# - "traefik.http.services.grafana.loadbalancer.server.port=3000"
|
|
# - "traefik.docker.network=proxy"
|
|
#
|
|
# influxdb:
|
|
# container_name: influxdb
|
|
# image: docker.io/influxdb:latest
|
|
# restart: unless-stopped
|
|
# ports:
|
|
# - 8086:8086
|
|
# - 8089:8089/udp
|
|
# networks:
|
|
# - grafana-monitoring
|
|
# volumes:
|
|
# - ./data/influxdb/:/var/lib/influxdb2
|
|
#
|
|
# telegraf:
|
|
# container_name: docker.io/telegraf
|
|
# restart: unless-stopped
|
|
# user: 1000:1000 #you need to find the GID of Docker if not added to Sudo group changed from 995 to 1000
|
|
# networks:
|
|
# - grafana-monitoring
|
|
# volumes:
|
|
# - /run/user/1000/podman/podman.sock:/run/podman/podman.sock
|
|
# - './config/telegraf/telegraf.conf:/etc/telegraf/telegraf.conf:ro'
|
|
# - './data/telegraf/mibs/:/usr/share/snmp/mibs'
|
|
# environment:
|
|
# - HOST_ETC=/hostfs/etc
|
|
# - HOST_PROC=/hostfs/proc
|
|
# - HOST_SYS=/hostfs/sys
|
|
# - HOST_VAR=/hostfs/var
|
|
# - HOST_RUN=/hostfs/run
|
|
# - HOST_MOUNT_PREFIX=/hostfs
|
|
# image: docker.io/telegraf
|
|
#
|
|
# graphite:
|
|
# image: docker.io/graphiteapp/graphite-statsd
|
|
# container_name: graphite
|
|
# restart: unless-stopped
|
|
# ports:
|
|
# - 8050:80 # nginx
|
|
# - 2003-2004 # carbon receiver - plaintext & pickle
|
|
# - 2023-2024 # carbon aggregator - plaintext & pickle
|
|
# - 8125:8125/udp # statsd
|
|
# - 8126:8126 # statsd admin
|
|
# volumes:
|
|
# - ./config/graphite/configs/:/opt/graphite/conf
|
|
# - ./data/graphite/data/:/opt/graphite/storage
|
|
# - ./config/graphite/statsd_config/:/opt/statsd/config
|
|
# networks:
|
|
# - grafana-monitoring
|
|
#
|
|
# prometheus:
|
|
# image: docker.io/prom/prometheus
|
|
# container_name: prometheus
|
|
# restart: unless-stopped
|
|
# ports:
|
|
# - 9090:9090
|
|
# volumes:
|
|
# - ./config/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
|
|
# networks:
|
|
# - grafana-monitoring
|
|
#
|
|
#networks:
|
|
# grafana-monitoring:
|
|
# proxy:
|
|
# # external: true
|