komodo-stacks/README.md
nocci 90aacb08e6 docs: Update README.md with complete stack overview
Updated README.md to reflect current state:
- Lists all 21 available stacks
- Organized by category (Monitoring, Communication, etc.)
- Includes port information for each stack
- Added Resource Sync instructions
- Added manual stack creation guide
- Added Secrets management section
- Added Caddy integration guide
- Added troubleshooting section
- Added stack structure example

This README now serves as complete documentation for the komodo-stacks repo.
2026-03-09 21:20:48 +00:00

264 lines
5.7 KiB
Markdown

# Komodo Stacks
🦎 **Docker Compose Stacks für Komodo Platform**
Diese Stacks sind für den Einsatz mit **Komodo Core v2** optimiert.
---
## 📁 Struktur
```
komodo-stacks/
└── stacks/
├── gotify/
│ ├── compose.yml # Docker Compose Definition
│ ├── README.md # Stack-spezifische Doku
│ └── stack.toml # Komodo Stack-Metadaten
├── prometheus/
└── ... (21 Stacks total)
```
---
## 🚀 Verwendung in Komodo
### Resource Sync (Automatisch)
1. **Syncs → Add Resource Sync**
2. **Git Provider:** git.sky-net.it
3. **Repo Path:** `nocci/komodo-stacks`
4. **Branch:** `main`
5. **Resource Paths:** `stacks/`
6. **Sync** klicken
Komodo erkennt automatisch alle `stack.toml` Files und erstellt die Stacks!
### Manuelle Stack-Erstellung
1. **Stacks → Add Stack**
2. **Name:** `gotify` (oder anderer Stack-Name)
3. **Quelle:** Git Repository
4. **Repo:** `nocci/komodo-stacks`
5. **Pfad:** `stacks/gotify/` (der Ordner!)
6. **Deploy** auf gewünschtem Server
---
## 📦 Verfügbare Stacks (21)
### 📊 Monitoring & Logging (5)
| Stack | Beschreibung | Port |
|-------|--------------|------|
| **prometheus** | Monitoring & Alerting System | 9090 |
| **grafana** | Dashboards & Visualisierung | 3000 |
| **node-exporter** | System-Metriken für Prometheus | 9100 |
| **promtail** | Log Collector für Loki | - |
| **loki** | Log Aggregation System | 3100 |
### 💬 Communication (2)
| Stack | Beschreibung | Port |
|-------|--------------|------|
| **gotify** | Push-Benachrichtigungen selbst gehostet | 9091 |
| **ntfy** | Push-Benachrichtigungen per HTTP | 8080 |
### ☁️ Collaboration (2)
| Stack | Beschreibung | Port |
|-------|--------------|------|
| **nextcloud-aio** | Cloud Storage & Collaboration | 8080 |
| **wordpress** | CMS / Blog Platform | 8080 |
### 🔒 Security (2)
| Stack | Beschreibung | Port |
|-------|--------------|------|
| **vaultwarden** | Password Manager (Bitwarden-kompatibel) | 8080 |
| **authentik** | SSO / Identity Provider | 9000/9443 |
### 🎬 Media (3)
| Stack | Beschreibung | Port |
|-------|--------------|------|
| **immich** | Photo Backup (Google Photos Alternative) | 2283 |
| **jellyfin** | Media Server (Open Source) | 8096 |
| **plex** | Media Server (Commercial) | 32400 |
### 🗄️ Infrastructure (3)
| Stack | Beschreibung | Port |
|-------|--------------|------|
| **forgejo** | Git Server (Gitea Fork) | 3000/2222 |
| **wireguard** | VPN Server | 51820 (UDP) |
| **portainer** | Docker Management UI | 9000 |
### 🔍 Utilities (1)
| Stack | Beschreibung | Port |
|-------|--------------|------|
| **searxng** | Privacy Meta Search Engine | 8080 |
### 🎮 Gaming (1)
| Stack | Beschreibung | Port |
|-------|--------------|------|
| **pterodactyl-panel** | Game Server Management | 8080/8443 |
### 🐘 Social (1)
| Stack | Beschreibung | Port |
|-------|--------------|------|
| **gotosocial** | ActivityPub Server (Fediverse) | 8080 |
### 💾 Backup (1)
| Stack | Beschreibung | Port |
|-------|--------------|------|
| **backrest** | Backup Management UI (Restic) | 8080 |
---
## 🔐 Secrets
Secrets werden in **Komodo** verwaltet:
1. **Settings → Secrets**
2. **Add Secret**
3. **Name und Wert** eingeben
4. **Beim Stack-Deploy** auswählen
### Häufige Secrets:
| Secret Name | Verwendung |
|-------------|------------|
| `admin-user` | Admin Username |
| `admin-pass` | Admin Password |
| `db-password` | Datenbank Passwort |
| `api-token` | API Token |
---
## 🌐 Caddy Integration
**WICHTIG:** Alle Stacks hören nur auf `localhost:PORT`!
Nach dem Deployen, Caddy Config auf dem Server bearbeiten:
```bash
ssh <server>
sudo nano /etc/caddy/Caddyfile
```
Beispiel für Gotify:
```caddyfile
gotify.example.com {
reverse_proxy localhost:9091
}
```
Dann:
```bash
sudo systemctl reload caddy
```
---
## 🛠️ Eigene Stacks hinzufügen
1. **Ordner erstellen:** `stacks/<stack-name>/`
2. **compose.yml** erstellen (Docker Compose Definition)
3. **README.md** mit Infos (Deploy-Pfad, Ports, Caddy, Notes)
4. **stack.toml** erstellen:
```toml
[[stacks]]
name = "my-stack"
description = "Mein Stack"
compose_path = "compose.yml"
```
5. **Commit & Push**
---
## 📋 Stack-Struktur (Beispiel)
```
stacks/
└── my-stack/
├── compose.yml # Docker Compose File
├── README.md # Doku für Users
└── stack.toml # Komodo Metadata
```
### compose.yml
```yaml
services:
my-service:
image: my-image:latest
ports:
- "127.0.0.1:8080:80"
volumes:
- data:/data
```
### stack.toml
```toml
[[stacks]]
name = "my-stack"
description = "Beschreibung"
compose_path = "compose.yml"
```
---
## 🔧 Troubleshooting
### Stack wird nicht angezeigt
1. **Resource Sync** manuell ausführen
2. **stack.toml** vorhanden?
3. **compose.yml** im selben Ordner?
4. **Git URL** korrekt?
### Container starten nicht
1. **Logs prüfen** im Komodo Dashboard
2. **Secrets konfiguriert?**
3. **Ports belegt?**
4. **Docker Ressourcen** ausreichend?
### Caddy Proxy funktioniert nicht
1. **Caddy Config prüfen:** `sudo caddy validate`
2. **DNS Records** zeigen auf Server-IP?
3. **Firewall** Ports 80/443 offen?
---
## 📞 Support
- **Komodo Docs:** https://komo.do
- **Komodo GitHub:** https://github.com/moghtech/komodo
- **Komodo Discord:** https://discord.gg/DRqE8Fvg5c
---
## 📝 Changelog
### 2026-03-09 - Initial Release
- ✅ 21 Stacks erstellt
- ✅ Alle mit compose.yml, README.md, stack.toml
- ✅ Komodo v2 kompatibel
- ✅ Resource Sync unterstützt
---
**Author:** nocci
**Version:** 1.0.0
**License:** MIT
**Komodo Version:** v2.0.0-dev-123+
**Last Updated:** 2026-03-09