feat: Restructure to subdirectories with compose.yml
Each stack now has its own directory with standard compose.yml: - stacks/gotify/compose.yml - stacks/prometheus/compose.yml - stacks/grafana/compose.yml - stacks/vaultwarden/compose.yml - stacks/node-exporter/compose.yml Benefits: - Cleaner structure - Easier to maintain - Works with Komodo manual stack creation - README.md for each stack with deployment info Usage in Komodo: 1. Stacks → Add Stack 2. Source: Git Repo (nocci/komodo-stacks) 3. Path: stacks/<stack-name>/ (the folder!) 4. Deploy to server
This commit is contained in:
parent
f0bcf8c70c
commit
b37541bb7a
16 changed files with 155 additions and 233 deletions
|
|
@ -1,25 +0,0 @@
|
|||
[stack]
|
||||
name = "Gotify"
|
||||
description = "Push-Benachrichtigungen selbst gehostet"
|
||||
version = "1.0.0"
|
||||
category = "communication"
|
||||
author = "nocci"
|
||||
|
||||
[compose]
|
||||
file = "gotify-compose.yml"
|
||||
|
||||
[variables.secrets]
|
||||
gotify-admin-user = "Admin Username"
|
||||
gotify-admin-pass = "Admin Password"
|
||||
|
||||
[ports]
|
||||
gotify = "80"
|
||||
|
||||
[volumes]
|
||||
gotify_data = "/app/data"
|
||||
|
||||
[healthcheck]
|
||||
endpoint = "http://localhost:80/health"
|
||||
interval = "30s"
|
||||
timeout = "10s"
|
||||
retries = 3
|
||||
20
stacks/gotify/README.md
Normal file
20
stacks/gotify/README.md
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
# Gotify
|
||||
|
||||
📱 Push-Benachrichtigungen selbst gehostet
|
||||
|
||||
## Deploy in Komodo
|
||||
|
||||
**Pfad:** `stacks/gotify/`
|
||||
|
||||
## Secrets
|
||||
|
||||
- `GOTIFY_DEFAULTUSER_NAME` - Admin Username
|
||||
- `GOTIFY_DEFAULTUSER_PASS` - Admin Password
|
||||
|
||||
## Caddy
|
||||
|
||||
```caddyfile
|
||||
gotify.example.com {
|
||||
reverse_proxy localhost:9091
|
||||
}
|
||||
```
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
[stack]
|
||||
name = "Grafana"
|
||||
description = "Grafana Dashboards & Visualisierung"
|
||||
version = "1.0.0"
|
||||
category = "monitoring"
|
||||
author = "nocci"
|
||||
|
||||
[compose]
|
||||
file = "grafana-compose.yml"
|
||||
|
||||
[variables.secrets]
|
||||
grafana-admin-user = "Admin Username"
|
||||
grafana-admin-pass = "Admin Password"
|
||||
|
||||
[ports]
|
||||
grafana = "3000"
|
||||
|
||||
[volumes]
|
||||
grafana_data = "/var/lib/grafana"
|
||||
|
||||
[healthcheck]
|
||||
endpoint = "http://localhost:3000/api/health"
|
||||
interval = "30s"
|
||||
timeout = "10s"
|
||||
retries = 3
|
||||
24
stacks/grafana/README.md
Normal file
24
stacks/grafana/README.md
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
# Grafana
|
||||
|
||||
📊 Dashboards & Visualisierung
|
||||
|
||||
## Deploy in Komodo
|
||||
|
||||
**Pfad:** `stacks/grafana/`
|
||||
|
||||
## Secrets
|
||||
|
||||
- `GF_SECURITY_ADMIN_USER` - Admin Username
|
||||
- `GF_SECURITY_ADMIN_PASSWORD` - Admin Password
|
||||
|
||||
## Ports
|
||||
|
||||
- `3000` - Web UI
|
||||
|
||||
## Caddy
|
||||
|
||||
```caddyfile
|
||||
grafana.example.com {
|
||||
reverse_proxy localhost:3000
|
||||
}
|
||||
```
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
[stack]
|
||||
name = "Node Exporter"
|
||||
description = "System-Metriken für Prometheus"
|
||||
version = "1.0.0"
|
||||
category = "monitoring"
|
||||
author = "nocci"
|
||||
|
||||
[compose]
|
||||
file = "node-exporter-compose.yml"
|
||||
|
||||
[variables]
|
||||
# Keine Secrets erforderlich
|
||||
|
||||
[ports]
|
||||
node_exporter = "9100"
|
||||
|
||||
[healthcheck]
|
||||
endpoint = "http://localhost:9100/metrics"
|
||||
interval = "30s"
|
||||
timeout = "10s"
|
||||
retries = 3
|
||||
15
stacks/node-exporter/README.md
Normal file
15
stacks/node-exporter/README.md
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
# Node Exporter
|
||||
|
||||
📈 System-Metriken für Prometheus
|
||||
|
||||
## Deploy in Komodo
|
||||
|
||||
**Pfad:** `stacks/node-exporter/`
|
||||
|
||||
## Ports
|
||||
|
||||
- `9100` - Metrics Endpoint
|
||||
|
||||
## Notes
|
||||
|
||||
Keine Secrets erforderlich. Auf jedem Server installieren der überwacht werden soll.
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
[stack]
|
||||
name = "Prometheus"
|
||||
description = "Prometheus Monitoring & Alerting System"
|
||||
version = "1.0.0"
|
||||
category = "monitoring"
|
||||
author = "nocci"
|
||||
|
||||
[compose]
|
||||
file = "prometheus-compose.yml"
|
||||
|
||||
[variables]
|
||||
# Keine Secrets erforderlich
|
||||
|
||||
[ports]
|
||||
prometheus = "9090"
|
||||
|
||||
[volumes]
|
||||
prometheus_data = "/prometheus"
|
||||
|
||||
[healthcheck]
|
||||
endpoint = "http://localhost:9090/-/healthy"
|
||||
interval = "30s"
|
||||
timeout = "10s"
|
||||
retries = 3
|
||||
19
stacks/prometheus/README.md
Normal file
19
stacks/prometheus/README.md
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
# Prometheus
|
||||
|
||||
📊 Monitoring & Alerting System
|
||||
|
||||
## Deploy in Komodo
|
||||
|
||||
**Pfad:** `stacks/prometheus/`
|
||||
|
||||
## Ports
|
||||
|
||||
- `9090` - Web UI
|
||||
|
||||
## Caddy
|
||||
|
||||
```caddyfile
|
||||
prometheus.example.com {
|
||||
reverse_proxy localhost:9090
|
||||
}
|
||||
```
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
[stack]
|
||||
name = "Vaultwarden"
|
||||
description = "Password Manager (Bitwarden-kompatibel)"
|
||||
version = "1.0.0"
|
||||
category = "security"
|
||||
author = "nocci"
|
||||
|
||||
[compose]
|
||||
file = "vaultwarden-compose.yml"
|
||||
|
||||
[variables.secrets]
|
||||
vaultwarden-admin-token = "Admin API Token (openssl rand -base64 48)"
|
||||
|
||||
[ports]
|
||||
vaultwarden = "80"
|
||||
|
||||
[volumes]
|
||||
vaultwarden_data = "/data"
|
||||
|
||||
[healthcheck]
|
||||
endpoint = "http://localhost:80/alive"
|
||||
interval = "30s"
|
||||
timeout = "10s"
|
||||
retries = 3
|
||||
23
stacks/vaultwarden/README.md
Normal file
23
stacks/vaultwarden/README.md
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
# Vaultwarden
|
||||
|
||||
🔐 Password Manager (Bitwarden-kompatibel)
|
||||
|
||||
## Deploy in Komodo
|
||||
|
||||
**Pfad:** `stacks/vaultwarden/`
|
||||
|
||||
## Secrets
|
||||
|
||||
- `ADMIN_TOKEN` - Admin API Token (openssl rand -base64 48)
|
||||
|
||||
## Ports
|
||||
|
||||
- `8080` - Web UI
|
||||
|
||||
## Caddy
|
||||
|
||||
```caddyfile
|
||||
vault.example.com {
|
||||
reverse_proxy localhost:8080
|
||||
}
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue