Files
homelab-monitor/docker-compose.yml
T
jhodgkin 7df08cd16d
CI / web (push) Successful in 20s
CI / api (push) Successful in 27s
Add SshHostCollector for .180 (omv) and .171 (ripper)
Extends monitoring to the two bare-metal boxes Proxmox can't see.
Uses a dedicated ed25519 key with a forced authorized_keys command
(see docs/ssh-collector-key-setup.md) so a leaked key can only ever
run the fixed read-only stats script, never arbitrary commands.

CPU is approximated from 1-min load average / core count (a true
utilization % would need two /proc/stat samples).

Closes #8.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-12 20:40:10 -06:00

34 lines
690 B
YAML

services:
api:
build: ./apps/api
container_name: homelab-monitor-api
restart: unless-stopped
env_file: .env
environment:
- HOSTS_CONFIG_PATH=/app/config/hosts.yaml
- DB_PATH=/app/data/monitor.db
- SSH_PRIVATE_KEY_PATH=/app/ssh/monitor_ed25519
volumes:
- ./config/hosts.yaml:/app/config/hosts.yaml:ro
- ./ssh/monitor_ed25519:/app/ssh/monitor_ed25519:ro
- monitor-data:/app/data
networks:
- web
web:
build: ./apps/web
container_name: homelab-monitor-web
restart: unless-stopped
ports:
- "8090:80"
depends_on:
- api
networks:
- web
networks:
web:
volumes:
monitor-data: