72 lines
2.2 KiB
Markdown
72 lines
2.2 KiB
Markdown
# Hecuba uptime server plan
|
|
|
|
## Current State
|
|
|
|
- Hecuba is a Hetzner cloud host running NixOS
|
|
- Docker is enabled for user `username`
|
|
- Firewall allows ports 80 and 443
|
|
- No existing uptime monitoring
|
|
|
|
## Goals
|
|
|
|
Monitor docker containers on hecuba with a self-hosted uptime dashboard
|
|
|
|
## Uptime Monitoring Options
|
|
|
|
### Option 1: Uptime Kuma (Recommended)
|
|
|
|
- Easy to use web dashboard
|
|
- Docker-based (fits existing setup)
|
|
- HTTP/TCP/Ping monitoring
|
|
- Status pages
|
|
- Notifications (email, Telegram, etc.)
|
|
|
|
## Implementation Plan
|
|
|
|
### Phase 1: Evaluate & Choose
|
|
- [ ] Research uptime monitoring solutions $id{11c06cf8-bea2-4858-9c7f-a293c3e8fba5}
|
|
- [ ] Decide on solution (Uptime Kuma likely best fit) $id{f87debaa-312e-424e-80e0-b624f0768774}
|
|
|
|
### Phase 2: Docker Setup
|
|
- [ ] Add uptime monitoring container to hecuba $id{7d8c5bf4-3d49-4f4c-87f1-1f34c5a4dbec}
|
|
- [ ] Configure persistent storage $id{9568b276-2885-4ae7-b5ca-5a9d7efb6a69}
|
|
- [ ] Set up reverse proxy (ports 80/443 already open) $id{c2f6ea85-f5e3-465d-95ba-62738a97da80}
|
|
- [ ] Configure SSL certificate $id{95c257e2-931b-44da-b0b1-a3e088956800}
|
|
|
|
### Phase 3: Configuration
|
|
- [ ] Add docker containers to monitor $id{4670deda-70d2-4c37-8121-2035aa7d57fb}
|
|
- [ ] Set up alert thresholds $id{da6acf90-0b62-4451-bb11-4f74c5c5dd27}
|
|
- [ ] Configure notifications (email/Telegram) $id{0b188adf-9a27-4499-9a19-b1ebd081bd21}
|
|
- [ ] Test monitoring $id{dd0df63f-5da2-4ba0-a386-45162a2bb642}
|
|
|
|
### Phase 4: Maintenance
|
|
- [ ] Add to backup routine $id{33a2c381-94cb-460e-b600-67cb503826d7}
|
|
- [ ] Document monitoring setup $id{f3bf7b85-737f-4511-8d3e-a270044abea3}
|
|
- [ ] Review and adjust alerts $id{32e46c53-dd9d-48a8-aef2-985ebaadd8da}
|
|
|
|
## Technical Details
|
|
|
|
### Storage Location
|
|
`/var/lib/uptime-kuma` or similar persistent volume
|
|
|
|
### Docker Compose Structure
|
|
```yaml
|
|
services:
|
|
uptime-kuma:
|
|
image: louislam/uptime-kuma:1
|
|
volumes:
|
|
- /var/lib/uptime-kuma:/app/data
|
|
ports:
|
|
- 3001:3001
|
|
restart: always
|
|
```
|
|
|
|
### NixOS Integration
|
|
- Consider using `virtualisation.oci-containers` for declarative setup
|
|
- Or keep docker-compose file (more flexible for updates)
|
|
|
|
## Next Steps
|
|
1. Pick uptime monitoring solution
|
|
2. Decide on deployment method (NixOS declarative vs docker-compose)
|
|
3. Implement
|