From f0bcf8c70cbe330879f430fd4fbe3b0474f8a4b8 Mon Sep 17 00:00:00 2001 From: nocci Date: Mon, 9 Mar 2026 19:26:17 +0000 Subject: [PATCH] feat: Flatten stack structure - all stacks directly in stacks/ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Removed all subdirectories - Renamed compose.yml to -compose.yml - Updated stack.toml to reference new compose file names - Structure is now flat for easier Komodo sync New structure: stacks/ ├── prometheus.toml ├── prometheus-compose.yml ├── grafana.toml ├── grafana-compose.yml ├── gotify.toml ├── gotify-compose.yml ├── vaultwarden.toml ├── vaultwarden-compose.yml └── node-exporter.toml └── node-exporter-compose.yml --- .../compose.yml => gotify-compose.yml} | 0 stacks/{gotify/stack.toml => gotify.toml} | 2 +- stacks/gotify/README.md | 70 ------------------ .../compose.yml => grafana-compose.yml} | 0 stacks/{grafana/stack.toml => grafana.toml} | 2 +- stacks/grafana/README.md | 74 ------------------- .../compose.yml => node-exporter-compose.yml} | 0 .../stack.toml => node-exporter.toml} | 2 +- stacks/node-exporter/README.md | 63 ---------------- .../compose.yml => prometheus-compose.yml} | 0 .../stack.toml => prometheus.toml} | 2 +- stacks/prometheus/README.md | 69 ----------------- .../compose.yml => vaultwarden-compose.yml} | 0 .../stack.toml => vaultwarden.toml} | 2 +- stacks/vaultwarden/README.md | 67 ----------------- 15 files changed, 5 insertions(+), 348 deletions(-) rename stacks/{gotify/compose.yml => gotify-compose.yml} (100%) rename stacks/{gotify/stack.toml => gotify.toml} (93%) delete mode 100644 stacks/gotify/README.md rename stacks/{grafana/compose.yml => grafana-compose.yml} (100%) rename stacks/{grafana/stack.toml => grafana.toml} (93%) delete mode 100644 stacks/grafana/README.md rename stacks/{node-exporter/compose.yml => node-exporter-compose.yml} (100%) rename stacks/{node-exporter/stack.toml => node-exporter.toml} (90%) delete mode 100644 stacks/node-exporter/README.md rename stacks/{prometheus/compose.yml => prometheus-compose.yml} (100%) rename stacks/{prometheus/stack.toml => prometheus.toml} (92%) delete mode 100644 stacks/prometheus/README.md rename stacks/{vaultwarden/compose.yml => vaultwarden-compose.yml} (100%) rename stacks/{vaultwarden/stack.toml => vaultwarden.toml} (92%) delete mode 100644 stacks/vaultwarden/README.md diff --git a/stacks/gotify/compose.yml b/stacks/gotify-compose.yml similarity index 100% rename from stacks/gotify/compose.yml rename to stacks/gotify-compose.yml diff --git a/stacks/gotify/stack.toml b/stacks/gotify.toml similarity index 93% rename from stacks/gotify/stack.toml rename to stacks/gotify.toml index 573b597..4d60ac8 100644 --- a/stacks/gotify/stack.toml +++ b/stacks/gotify.toml @@ -6,7 +6,7 @@ category = "communication" author = "nocci" [compose] -file = "compose.yml" +file = "gotify-compose.yml" [variables.secrets] gotify-admin-user = "Admin Username" diff --git a/stacks/gotify/README.md b/stacks/gotify/README.md deleted file mode 100644 index 76993eb..0000000 --- a/stacks/gotify/README.md +++ /dev/null @@ -1,70 +0,0 @@ -# Gotify - -📱 **Push-Benachrichtigungen selbst gehostet** - -Gotify ist ein einfacher Server zum Senden und Empfangen von Push-Nachrichten. - ---- - -## 🚀 Quick Start - -1. **In Komodo:** Stack auswählen → Deploy -2. **Server wählen** wo Gotify laufen soll -3. **Warten** bis Container läuft -4. **Caddy Config** hinzufügen (siehe unten) -5. **Öffnen** und Admin-Account erstellen - ---- - -## 🔧 Caddy Integration - -Nach dem Deployen auf dem Server: - -```bash -ssh -sudo nano /etc/caddy/Caddyfile -``` - -Hinzufügen: -```caddyfile -gotify.example.com { - reverse_proxy localhost:9091 -} -``` - -Dann: -```bash -sudo systemctl reload caddy -``` - ---- - -## 🔐 Secrets (Komodo) - -Folgende Secrets in Komodo anlegen **vor** dem Deployen: - -| Secret Name | Beschreibung | Beispiel | -|-------------|--------------|----------| -| `gotify-admin-user` | Admin Username | `admin` | -| `gotify-admin-pass` | Admin Password | `sicheres-passwort` | - -In Komodo: **Settings → Secrets → Add Secret** - ---- - -## 📁 Files - -- `compose.yml` - Docker Compose Konfiguration - ---- - -## 🔄 Updates - -Gotify wird automatisch aktuell gehalten durch Komodo. - ---- - -## 📞 Support - -- **Docs:** https://gotify.net/docs -- **GitHub:** https://github.com/gotify/server diff --git a/stacks/grafana/compose.yml b/stacks/grafana-compose.yml similarity index 100% rename from stacks/grafana/compose.yml rename to stacks/grafana-compose.yml diff --git a/stacks/grafana/stack.toml b/stacks/grafana.toml similarity index 93% rename from stacks/grafana/stack.toml rename to stacks/grafana.toml index 9570289..b3e5b3f 100644 --- a/stacks/grafana/stack.toml +++ b/stacks/grafana.toml @@ -6,7 +6,7 @@ category = "monitoring" author = "nocci" [compose] -file = "compose.yml" +file = "grafana-compose.yml" [variables.secrets] grafana-admin-user = "Admin Username" diff --git a/stacks/grafana/README.md b/stacks/grafana/README.md deleted file mode 100644 index ad68acd..0000000 --- a/stacks/grafana/README.md +++ /dev/null @@ -1,74 +0,0 @@ -# Grafana - -📊 **Dashboards & Visualisierung** - -Grafana ist eine Open-Source-Plattform für Datenvisualisierung. - ---- - -## 🚀 Quick Start - -1. **In Komodo:** Stack auswählen → Deploy -2. **Server wählen** -3. **Warten** bis Container läuft -4. **Caddy Config** hinzufügen -5. **Öffnen** und einloggen (admin/admin) - ---- - -## 🔧 Caddy Integration - -```bash -ssh -sudo nano /etc/caddy/Caddyfile -``` - -Hinzufügen: -```caddyfile -grafana.example.com { - reverse_proxy localhost:3000 -} -``` - -```bash -sudo systemctl reload caddy -``` - ---- - -## 🔐 Secrets (Komodo) - -| Secret Name | Beschreibung | Beispiel | -|-------------|--------------|----------| -| `grafana-admin-user` | Admin Username | `admin` | -| `grafana-admin-pass` | Admin Password | `sicheres-passwort` | - ---- - -## 📁 Files - -- `compose.yml` - Docker Compose Konfiguration - ---- - -## 📊 Datenquellen - -Nach dem ersten Login: -1. **Configuration → Data Sources** -2. **Add data source** -3. **Prometheus** auswählen -4. URL: `http://prometheus:9090` (wenn auf gleichem Server: `http://localhost:9090`) -5. **Save & Test** - ---- - -## 🔄 Updates - -Wird automatisch aktuell gehalten durch Komodo. - ---- - -## 📞 Support - -- **Docs:** https://grafana.com/docs -- **GitHub:** https://github.com/grafana/grafana diff --git a/stacks/node-exporter/compose.yml b/stacks/node-exporter-compose.yml similarity index 100% rename from stacks/node-exporter/compose.yml rename to stacks/node-exporter-compose.yml diff --git a/stacks/node-exporter/stack.toml b/stacks/node-exporter.toml similarity index 90% rename from stacks/node-exporter/stack.toml rename to stacks/node-exporter.toml index 9f3ccca..19086af 100644 --- a/stacks/node-exporter/stack.toml +++ b/stacks/node-exporter.toml @@ -6,7 +6,7 @@ category = "monitoring" author = "nocci" [compose] -file = "compose.yml" +file = "node-exporter-compose.yml" [variables] # Keine Secrets erforderlich diff --git a/stacks/node-exporter/README.md b/stacks/node-exporter/README.md deleted file mode 100644 index caf9321..0000000 --- a/stacks/node-exporter/README.md +++ /dev/null @@ -1,63 +0,0 @@ -# Node Exporter - -📈 **System-Metriken für Prometheus** - -Node Exporter sammelt Hardware- und Betriebssystem-Metriken. - ---- - -## 🚀 Quick Start - -1. **In Komodo:** Stack auswählen → Deploy -2. **Server wählen** (wo Prometheus läuft) -3. **Warten** bis Container läuft -4. **In Prometheus** als Target hinzufügen - ---- - -## 🔧 Prometheus Integration - -In Prometheus Config (`prometheus.yml`): - -```yaml -scrape_configs: - - job_name: 'node-exporter' - static_configs: - - targets: ['localhost:9100'] -``` - ---- - -## 🔐 Secrets - -Keine Secrets erforderlich. - ---- - -## 📁 Files - -- `compose.yml` - Docker Compose Konfiguration - ---- - -## 📊 Metriken - -Node Exporter exposed Metriken auf Port 9100: -- CPU Usage -- Memory Usage -- Disk I/O -- Network I/O -- System Load - ---- - -## 🔄 Updates - -Wird automatisch aktuell gehalten durch Komodo. - ---- - -## 📞 Support - -- **GitHub:** https://github.com/prometheus/node_exporter -- **Docs:** https://prometheus.io/docs/guides/node-exporter/ diff --git a/stacks/prometheus/compose.yml b/stacks/prometheus-compose.yml similarity index 100% rename from stacks/prometheus/compose.yml rename to stacks/prometheus-compose.yml diff --git a/stacks/prometheus/stack.toml b/stacks/prometheus.toml similarity index 92% rename from stacks/prometheus/stack.toml rename to stacks/prometheus.toml index 9700036..a9de2f8 100644 --- a/stacks/prometheus/stack.toml +++ b/stacks/prometheus.toml @@ -6,7 +6,7 @@ category = "monitoring" author = "nocci" [compose] -file = "compose.yml" +file = "prometheus-compose.yml" [variables] # Keine Secrets erforderlich diff --git a/stacks/prometheus/README.md b/stacks/prometheus/README.md deleted file mode 100644 index c454fc5..0000000 --- a/stacks/prometheus/README.md +++ /dev/null @@ -1,69 +0,0 @@ -# Prometheus - -📊 **Monitoring & Alerting** - -Prometheus ist ein Open-Source-Monitoring- und Alerting-System. - ---- - -## 🚀 Quick Start - -1. **In Komodo:** Stack auswählen → Deploy -2. **Server wählen** -3. **Warten** bis Container läuft -4. **Caddy Config** hinzufügen -5. **Öffnen** unter `prometheus.example.com` - ---- - -## 🔧 Caddy Integration - -```bash -ssh -sudo nano /etc/caddy/Caddyfile -``` - -Hinzufügen: -```caddyfile -prometheus.example.com { - reverse_proxy localhost:9090 -} -``` - -```bash -sudo systemctl reload caddy -``` - ---- - -## 🔐 Secrets (Komodo) - -Keine Secrets erforderlich für Basis-Installation. - ---- - -## 📁 Files - -- `compose.yml` - Docker Compose Konfiguration - ---- - -## 📊 Prometheus UI - -- **URL:** http://localhost:9090 -- **Query Browser:** `/graph` -- **Alerts:** `/alerts` -- **Targets:** `/targets` - ---- - -## 🔄 Updates - -Prometheus wird automatisch aktuell gehalten durch Komodo. - ---- - -## 📞 Support - -- **Docs:** https://prometheus.io/docs -- **GitHub:** https://github.com/prometheus/prometheus diff --git a/stacks/vaultwarden/compose.yml b/stacks/vaultwarden-compose.yml similarity index 100% rename from stacks/vaultwarden/compose.yml rename to stacks/vaultwarden-compose.yml diff --git a/stacks/vaultwarden/stack.toml b/stacks/vaultwarden.toml similarity index 92% rename from stacks/vaultwarden/stack.toml rename to stacks/vaultwarden.toml index 343b228..5e240e3 100644 --- a/stacks/vaultwarden/stack.toml +++ b/stacks/vaultwarden.toml @@ -6,7 +6,7 @@ category = "security" author = "nocci" [compose] -file = "compose.yml" +file = "vaultwarden-compose.yml" [variables.secrets] vaultwarden-admin-token = "Admin API Token (openssl rand -base64 48)" diff --git a/stacks/vaultwarden/README.md b/stacks/vaultwarden/README.md deleted file mode 100644 index fc16b4e..0000000 --- a/stacks/vaultwarden/README.md +++ /dev/null @@ -1,67 +0,0 @@ -# Vaultwarden - -🔐 **Password Manager (Bitwarden-kompatibel)** - -Vaultwarden ist eine inoffizielle Bitwarden API-Implementierung in Rust. - ---- - -## 🚀 Quick Start - -1. **In Komodo:** Stack auswählen → Deploy -2. **Server wählen** -3. **Warten** bis Container läuft -4. **Caddy Config** hinzufügen -5. **Öffnen** und Organization erstellen - ---- - -## 🔧 Caddy Integration - -```bash -ssh -sudo nano /etc/caddy/Caddyfile -``` - -Hinzufügen: -```caddyfile -vault.example.com { - reverse_proxy localhost:8080 -} -``` - -```bash -sudo systemctl reload caddy -``` - ---- - -## 🔐 Secrets (Komodo) - -| Secret Name | Beschreibung | Beispiel | -|-------------|--------------|----------| -| `vaultwarden-admin-token` | Admin API Token | `zufälliger-string` | - -**Wichtig:** Admin-Token generieren mit: -```bash -openssl rand -base64 48 -``` - ---- - -## 📁 Files - -- `compose.yml` - Docker Compose Konfiguration - ---- - -## 🔄 Updates - -Vaultwarden wird automatisch aktuell gehalten durch Komodo. - ---- - -## 📞 Support - -- **Docs:** https://github.com/dani-garcia/vaultwarden -- **Wiki:** https://github.com/dani-garcia/vaultwarden/wiki