For uptime status monitoring. Deployed at https://status.georgew.dev
|
|
||
|---|---|---|
| .gitignore | ||
| .woodpecker.yaml | ||
| docker-compose.yaml | ||
| README.md | ||
Uptime Kuma Deployment
This repository contains the deployment configuration for Uptime Kuma, a self-hosted monitoring tool. It is used to track the availability of various services in this stack and alert on any downtime.
🏗️ Architecture Overview
- Service: Uptime Kuma (Status Page & Monitoring)
- Networking: Integrated into the
web_trafficexternal network for access via your reverse proxy. - Storage: Uses a persistent volume to store monitoring history, notification settings, and status page configurations.
- CI/CD: Automated deployment via Woodpecker CI on every push to the
mainbranch.
📂 Repository Structure
docker-compose.yaml: Configures the service with persistent data mapping to./uptime-kuma-data..woodpecker.yaml: Handles the automated deployment to the/home/george/uptime-kumadirectory.
🚀 Deployment
Manual Setup
Ensure the web_traffic network exists before starting:
docker network create web_traffic
docker compose up -d
CI/CD Workflow
The Woodpecker pipeline performs the following on every push to main:
- Syncs the repository files to the host server.
- Triggers a docker compose up -d with --pull always and --force-recreate to ensure you are running the latest version of Uptime Kuma.
## 🔔 Monitoring Capabilities
Once deployed, Uptime Kuma is used to monitor:
- HTTP(s) Endpoints: Verifying reverse proxy availability.
- Docker Containers: Monitoring container status via the Docker socket (if mapped).
- Ping/TCP: Checking host and network health.
🔒 Security
Access to the dashboard is managed via the internal Uptime Kuma auth system. Public status pages can be created within the UI to share service health without requiring a login.