diff --git a/README.md b/README.md index d169bfc..5707a65 100644 --- a/README.md +++ b/README.md @@ -18,11 +18,10 @@ DNS intern: `*.iot` → VLAN 40 (z. B. `homeassistant.iot` → 192.168.40.254) ``` docu/ ├── README.md ← diese Datei -├── guests/ ← Compose & Stack-Config pro VM/CT (ohne Daten) ├── migration/ ← Schritt-für-Schritt Updates & Tuning ├── shared/ ← übergreifend (MQTT, Git, Netzwerk) -├── pve1/ ← nur pve1 -└── pve2/ ← nur pve2 +├── pve1/ ← pve1 inkl. guests/ (VM/CT-Stacks) +└── pve2/ ← pve2 inkl. guests/ (falls vorhanden) ``` ## Shared (beide Hosts) @@ -34,8 +33,7 @@ docu/ | [shared/mqtt-homeassistant.md](shared/mqtt-homeassistant.md) | MQTT-Broker, HA Discovery, Credentials | | [shared/git-und-repos.md](shared/git-und-repos.md) | Gitea, Tokens, Clone-Pfade | | [migration/nextcloud-optimierung-und-updates.md](migration/nextcloud-optimierung-und-updates.md) | Nextcloud VM 101: Updates, Tuning, notify_push | -| [guests/](guests/) | Docker-Stacks pro Gast (Compose, ohne Volumes/Daten) | -| [guests/vm101-ubuntu/docbr0-opnsense-routing.md](guests/vm101-ubuntu/docbr0-opnsense-routing.md) | VM 101: docbr0 Instanz | +| [pve1/guests/](pve1/guests/) | pve1: Docker-Stacks pro VM/CT (Compose, ohne Daten) | | [shared/opnsense-docker-subnet-routing.md](shared/opnsense-docker-subnet-routing.md) | How-To: Docker-Subnetz über OPNsense | ## Code-Repos (separat von dieser Doku) diff --git a/pve1/00_README.md b/pve1/00_README.md index 303c02e..75fabf1 100644 --- a/pve1/00_README.md +++ b/pve1/00_README.md @@ -16,9 +16,8 @@ | 05 | [05_speicher_wartung.md](05_speicher_wartung.md) | Speicher & Wartung | | 06 | [06_ubuntu-vm-nextcloud.md](06_ubuntu-vm-nextcloud.md) | VM 101 ubuntu, Nextcloud Status & Optimierung | | — | [scripts/](scripts/) | VM-101-Skripte (NAT, Wartungs-Cron, crontab) | -| — | [../guests/vm101-ubuntu/](../guests/vm101-ubuntu/) | VM 101 Docker-Stacks (Compose, ohne Daten) | +| — | [guests/](guests/) | VM/CT auf pve1: Docker-Stacks (Compose, ohne Daten) | | — | [../shared/opnsense-docker-subnet-routing.md](../shared/opnsense-docker-subnet-routing.md) | How-To: Docker-Subnetz über OPNsense | -| — | [../guests/vm101-ubuntu/docbr0-opnsense-routing.md](../guests/vm101-ubuntu/docbr0-opnsense-routing.md) | VM 101 docbr0 (Instanz) | ## Shared diff --git a/pve1/06_ubuntu-vm-nextcloud.md b/pve1/06_ubuntu-vm-nextcloud.md index 061efe8..5b0ab3b 100644 --- a/pve1/06_ubuntu-vm-nextcloud.md +++ b/pve1/06_ubuntu-vm-nextcloud.md @@ -26,7 +26,7 @@ Daten: im Container: /data Stack-Pfad auf der VM: /opt/stacks/nextcloud/ -Compose (Repo): [guests/vm101-ubuntu/stacks/nextcloud/](../guests/vm101-ubuntu/stacks/nextcloud/) +Compose (Repo): [guests/vm101-ubuntu/stacks/nextcloud/](guests/vm101-ubuntu/stacks/nextcloud/) Compose (Live): /opt/stacks/nextcloud/compose.yml Nextcloud-Config: /opt/stacks/nextcloud/config/www/nextcloud/config/config.php Image: lscr.io/linuxserver/nextcloud:latest (NC 34.0.0.12 = Hub 26 Spring) diff --git a/guests/README.md b/pve1/guests/README.md similarity index 78% rename from guests/README.md rename to pve1/guests/README.md index 17e45c2..40a8df4 100644 --- a/guests/README.md +++ b/pve1/guests/README.md @@ -1,4 +1,4 @@ -# Gäste — Stack-Konfiguration (Compose & Anhang) +# Gäste auf pve1 — Stack-Konfiguration (Compose & Anhang) Compose-Dateien und stack-relevante Konfiguration **ohne** Volumes, Datenbanken, App-Daten oder Secrets. @@ -12,7 +12,7 @@ Passwörter in den Repo-Dateien sind durch `REDACTED` ersetzt. Live-Werte nur au | Gast | Routing / OPNsense | |------|-------------------| -| *(allgemein)* | [../shared/opnsense-docker-subnet-routing.md](../shared/opnsense-docker-subnet-routing.md) | +| *(allgemein)* | [../../shared/opnsense-docker-subnet-routing.md](../../shared/opnsense-docker-subnet-routing.md) | | [vm101-ubuntu](vm101-ubuntu/) | [docbr0-opnsense-routing.md](vm101-ubuntu/docbr0-opnsense-routing.md) | **Sync vom Gast (Beispiel VM 101):** @@ -21,6 +21,6 @@ Passwörter in den Repo-Dateien sind durch `REDACTED` ersetzt. Live-Werte nur au # Von einem Host mit SSH-Zugang — nur Compose + Config, keine Daten rsync -av --exclude='data/' --exclude='db/' --exclude='mysql/' --exclude='gitea/' \ --exclude='config/www/' --exclude='config/log/' --exclude='letsencrypt/' \ - jean@192.168.10.10:/opt/stacks/ ./guests/vm101-ubuntu/stacks-live/ + jean@192.168.10.10:/opt/stacks/ ./pve1/guests/vm101-ubuntu/stacks-live/ # Anschließend Secrets redigieren, dann ins Repo übernehmen ``` diff --git a/guests/vm101-ubuntu/README.md b/pve1/guests/vm101-ubuntu/README.md similarity index 83% rename from guests/vm101-ubuntu/README.md rename to pve1/guests/vm101-ubuntu/README.md index a857f93..7a101fe 100644 --- a/guests/vm101-ubuntu/README.md +++ b/pve1/guests/vm101-ubuntu/README.md @@ -6,13 +6,13 @@ | **IP** | 192.168.10.10 | | **Stacks** | `/opt/stacks/` | | **Stack-UI** | Dockge → `:5001` | -| **Docker** | `iptables: false` → [docker-daemon.json](docker-daemon.json), NAT: [../pve1/scripts/vm101-docker-nat-rules.sh](../pve1/scripts/vm101-docker-nat-rules.sh) | +| **Docker** | `iptables: false` → [docker-daemon.json](docker-daemon.json), NAT: [../../scripts/vm101-docker-nat-rules.sh](../../scripts/vm101-docker-nat-rules.sh) | ## Netzwerk `docbr0` Externes Docker-Netz für Container mit **festen IPs** (`10.2.2.0/24`). -**Erreichbarkeit aus LAN/VLANs:** [docbr0-opnsense-routing.md](docbr0-opnsense-routing.md) (Instanz) · [How-To](../../shared/opnsense-docker-subnet-routing.md) (allgemein) +**Erreichbarkeit aus LAN/VLANs:** [docbr0-opnsense-routing.md](docbr0-opnsense-routing.md) (Instanz) · [How-To](../../../shared/opnsense-docker-subnet-routing.md) (allgemein) | Stack / Service | Container | IP (docbr0) | |-----------------|-----------|-------------| @@ -43,4 +43,4 @@ Externes Docker-Netz für Container mit **festen IPs** (`10.2.2.0/24`). | [sabnzbd](stacks/sabnzbd/) | `compose.yml` | Usenet | | [vaultwarden](stacks/vaultwarden/) | `compose.yml` | Passwortmanager | -Details Nextcloud-Betrieb: [../../pve1/06_ubuntu-vm-nextcloud.md](../../pve1/06_ubuntu-vm-nextcloud.md) +Details Nextcloud-Betrieb: [../../06_ubuntu-vm-nextcloud.md](../../06_ubuntu-vm-nextcloud.md) diff --git a/guests/vm101-ubuntu/docbr0-opnsense-routing.md b/pve1/guests/vm101-ubuntu/docbr0-opnsense-routing.md similarity index 76% rename from guests/vm101-ubuntu/docbr0-opnsense-routing.md rename to pve1/guests/vm101-ubuntu/docbr0-opnsense-routing.md index 62d1100..48d2ecc 100644 --- a/guests/vm101-ubuntu/docbr0-opnsense-routing.md +++ b/pve1/guests/vm101-ubuntu/docbr0-opnsense-routing.md @@ -1,7 +1,7 @@ # docbr0 (10.2.2.0/24) — Routing & OPNsense **Instanz:** VM 101 `ubuntu` auf pve1 -**Allgemeine Anleitung:** [../../shared/opnsense-docker-subnet-routing.md](../../shared/opnsense-docker-subnet-routing.md) +**Allgemeine Anleitung:** [../../../shared/opnsense-docker-subnet-routing.md](../../../shared/opnsense-docker-subnet-routing.md) --- @@ -40,7 +40,7 @@ Client (192.168.10.x / andere VLANs) ## OPNsense (Kurz) -Siehe [How-To](../../shared/opnsense-docker-subnet-routing.md) für Screenshots-Felder im Detail. +Siehe [How-To](../../../shared/opnsense-docker-subnet-routing.md) für Screenshots-Felder im Detail. 1. Gateway **VM101_DOCKER** → `192.168.10.10` auf LAN/VLAN10 2. Route **10.2.2.0/24** via VM101_DOCKER @@ -56,7 +56,7 @@ Siehe [How-To](../../shared/opnsense-docker-subnet-routing.md) für Screenshots- | Bridge | `10.2.2.1/24` auf `docbr0` | | `ip_forward` | `1` | | Docker | `"iptables": false` | -| Container-Internet | [vm101-docker-nat-rules.sh](../../pve1/scripts/vm101-docker-nat-rules.sh) | +| Container-Internet | [vm101-docker-nat-rules.sh](../../scripts/vm101-docker-nat-rules.sh) | ```bash ip route | grep 10.2.2 @@ -91,5 +91,5 @@ curl -sI http://10.2.2.254 | Dokument | Inhalt | |----------|--------| | [README.md](README.md) | Stack-Liste, IP-Tabelle | -| [../../pve1/06_ubuntu-vm-nextcloud.md](../../pve1/06_ubuntu-vm-nextcloud.md) | Nextcloud, notify_push | -| [../../shared/opnsense-docker-subnet-routing.md](../../shared/opnsense-docker-subnet-routing.md) | Allgemeines How-To | +| [../../06_ubuntu-vm-nextcloud.md](../../06_ubuntu-vm-nextcloud.md) | Nextcloud, notify_push | +| [../../../shared/opnsense-docker-subnet-routing.md](../../../shared/opnsense-docker-subnet-routing.md) | Allgemeines How-To | diff --git a/guests/vm101-ubuntu/docker-daemon.json b/pve1/guests/vm101-ubuntu/docker-daemon.json similarity index 100% rename from guests/vm101-ubuntu/docker-daemon.json rename to pve1/guests/vm101-ubuntu/docker-daemon.json diff --git a/guests/vm101-ubuntu/stacks/audio/compose.yml b/pve1/guests/vm101-ubuntu/stacks/audio/compose.yml similarity index 100% rename from guests/vm101-ubuntu/stacks/audio/compose.yml rename to pve1/guests/vm101-ubuntu/stacks/audio/compose.yml diff --git a/guests/vm101-ubuntu/stacks/dockge/compose.yaml b/pve1/guests/vm101-ubuntu/stacks/dockge/compose.yaml similarity index 100% rename from guests/vm101-ubuntu/stacks/dockge/compose.yaml rename to pve1/guests/vm101-ubuntu/stacks/dockge/compose.yaml diff --git a/guests/vm101-ubuntu/stacks/git2/compose.yml b/pve1/guests/vm101-ubuntu/stacks/git2/compose.yml similarity index 100% rename from guests/vm101-ubuntu/stacks/git2/compose.yml rename to pve1/guests/vm101-ubuntu/stacks/git2/compose.yml diff --git a/guests/vm101-ubuntu/stacks/jeanavril/compose.yml b/pve1/guests/vm101-ubuntu/stacks/jeanavril/compose.yml similarity index 100% rename from guests/vm101-ubuntu/stacks/jeanavril/compose.yml rename to pve1/guests/vm101-ubuntu/stacks/jeanavril/compose.yml diff --git a/guests/vm101-ubuntu/stacks/nextcloud/README.md b/pve1/guests/vm101-ubuntu/stacks/nextcloud/README.md similarity index 86% rename from guests/vm101-ubuntu/stacks/nextcloud/README.md rename to pve1/guests/vm101-ubuntu/stacks/nextcloud/README.md index 087e0d3..384cc9f 100644 --- a/guests/vm101-ubuntu/stacks/nextcloud/README.md +++ b/pve1/guests/vm101-ubuntu/stacks/nextcloud/README.md @@ -19,4 +19,4 @@ Live: `/opt/stacks/nextcloud/` - `db/` — MariaDB-Daten - `/mnt/nextcloud-data` — NFS User-Daten -Betrieb & Tuning: [../../../pve1/06_ubuntu-vm-nextcloud.md](../../../pve1/06_ubuntu-vm-nextcloud.md) +Betrieb & Tuning: [../../../../06_ubuntu-vm-nextcloud.md](../../../../06_ubuntu-vm-nextcloud.md) diff --git a/guests/vm101-ubuntu/stacks/nextcloud/compose.yml b/pve1/guests/vm101-ubuntu/stacks/nextcloud/compose.yml similarity index 100% rename from guests/vm101-ubuntu/stacks/nextcloud/compose.yml rename to pve1/guests/vm101-ubuntu/stacks/nextcloud/compose.yml diff --git a/guests/vm101-ubuntu/stacks/nextcloud/config/custom-cont-init.d/99-custom-apps-symlink b/pve1/guests/vm101-ubuntu/stacks/nextcloud/config/custom-cont-init.d/99-custom-apps-symlink similarity index 100% rename from guests/vm101-ubuntu/stacks/nextcloud/config/custom-cont-init.d/99-custom-apps-symlink rename to pve1/guests/vm101-ubuntu/stacks/nextcloud/config/custom-cont-init.d/99-custom-apps-symlink diff --git a/guests/vm101-ubuntu/stacks/nextcloud/config/nginx/site-confs/default.conf b/pve1/guests/vm101-ubuntu/stacks/nextcloud/config/nginx/site-confs/default.conf similarity index 100% rename from guests/vm101-ubuntu/stacks/nextcloud/config/nginx/site-confs/default.conf rename to pve1/guests/vm101-ubuntu/stacks/nextcloud/config/nginx/site-confs/default.conf diff --git a/guests/vm101-ubuntu/stacks/nextcloud/config/php/php-local.ini b/pve1/guests/vm101-ubuntu/stacks/nextcloud/config/php/php-local.ini similarity index 100% rename from guests/vm101-ubuntu/stacks/nextcloud/config/php/php-local.ini rename to pve1/guests/vm101-ubuntu/stacks/nextcloud/config/php/php-local.ini diff --git a/guests/vm101-ubuntu/stacks/nextcloud/config/php/www2.conf b/pve1/guests/vm101-ubuntu/stacks/nextcloud/config/php/www2.conf similarity index 100% rename from guests/vm101-ubuntu/stacks/nextcloud/config/php/www2.conf rename to pve1/guests/vm101-ubuntu/stacks/nextcloud/config/php/www2.conf diff --git a/guests/vm101-ubuntu/stacks/nextcloud/db.env b/pve1/guests/vm101-ubuntu/stacks/nextcloud/db.env similarity index 100% rename from guests/vm101-ubuntu/stacks/nextcloud/db.env rename to pve1/guests/vm101-ubuntu/stacks/nextcloud/db.env diff --git a/guests/vm101-ubuntu/stacks/npm/docker-compose.yml b/pve1/guests/vm101-ubuntu/stacks/npm/docker-compose.yml similarity index 100% rename from guests/vm101-ubuntu/stacks/npm/docker-compose.yml rename to pve1/guests/vm101-ubuntu/stacks/npm/docker-compose.yml diff --git a/guests/vm101-ubuntu/stacks/phpipam/compose.yml b/pve1/guests/vm101-ubuntu/stacks/phpipam/compose.yml similarity index 100% rename from guests/vm101-ubuntu/stacks/phpipam/compose.yml rename to pve1/guests/vm101-ubuntu/stacks/phpipam/compose.yml diff --git a/guests/vm101-ubuntu/stacks/sabnzbd/compose.yml b/pve1/guests/vm101-ubuntu/stacks/sabnzbd/compose.yml similarity index 100% rename from guests/vm101-ubuntu/stacks/sabnzbd/compose.yml rename to pve1/guests/vm101-ubuntu/stacks/sabnzbd/compose.yml diff --git a/guests/vm101-ubuntu/stacks/vaultwarden/compose.yml b/pve1/guests/vm101-ubuntu/stacks/vaultwarden/compose.yml similarity index 100% rename from guests/vm101-ubuntu/stacks/vaultwarden/compose.yml rename to pve1/guests/vm101-ubuntu/stacks/vaultwarden/compose.yml diff --git a/pve2/00_README.md b/pve2/00_README.md index 22fe488..55ca32c 100644 --- a/pve2/00_README.md +++ b/pve2/00_README.md @@ -18,6 +18,7 @@ | 07 | [07_Storage-Migration-docker.md](07_Storage-Migration-docker.md) | Docker-Storage | | 08 | [08_GPU-Idle-und-Power-Monitoring.md](08_GPU-Idle-und-Power-Monitoring.md) | GPU Idle (Kurz) | | 09 | [09_GPU-Idle-vollstaendig.md](09_GPU-Idle-vollstaendig.md) | GPU Idle (vollständig) | +| — | [guests/](guests/) | VM/CT auf pve2: Docker-Stacks (Compose, ohne Daten) | ## Shared diff --git a/pve2/guests/README.md b/pve2/guests/README.md new file mode 100644 index 0000000..fdd9eb5 --- /dev/null +++ b/pve2/guests/README.md @@ -0,0 +1,9 @@ +# Gäste auf pve2 — Stack-Konfiguration + +Compose-Dateien und stack-relevante Konfiguration **ohne** Volumes/Daten — analog [pve1/guests/](../pve1/guests/). + +| Gast | Status | +|------|--------| +| CT 101 `docker` (Frigate, …) | noch nicht im Repo | + +Live-Stacks auf pve2 bei Bedarf hier unter `ct101-docker/` o. ä. ablegen. diff --git a/shared/infrastruktur-netzwerk.md b/shared/infrastruktur-netzwerk.md index 085507c..918c316 100644 --- a/shared/infrastruktur-netzwerk.md +++ b/shared/infrastruktur-netzwerk.md @@ -34,7 +34,7 @@ Schema: VLAN-ID oft = drittes Oktett (`192.168.40.0/24` = VLAN 40) Details CT/VM-Netze: siehe Host-Doku unter `pve1/` bzw. `pve2/`. -**Docker-Subnetze hinter einem Host:** allgemeines How-To → [opnsense-docker-subnet-routing.md](opnsense-docker-subnet-routing.md) · Instanz VM 101 → [guests/vm101-ubuntu/docbr0-opnsense-routing.md](../guests/vm101-ubuntu/docbr0-opnsense-routing.md) +**Docker-Subnetze hinter einem Host:** allgemeines How-To → [opnsense-docker-subnet-routing.md](opnsense-docker-subnet-routing.md) · Instanz VM 101 → [pve1/guests/vm101-ubuntu/docbr0-opnsense-routing.md](../pve1/guests/vm101-ubuntu/docbr0-opnsense-routing.md) ## Rollen diff --git a/shared/opnsense-docker-subnet-routing.md b/shared/opnsense-docker-subnet-routing.md index 1fb450e..b295af3 100644 --- a/shared/opnsense-docker-subnet-routing.md +++ b/shared/opnsense-docker-subnet-routing.md @@ -186,7 +186,7 @@ docker ps --filter network=docbr0 [ ] OPNsense: Firewall Pass pro Quell-VLAN [ ] Apply Changes [ ] Test: traceroute vom Client -[ ] Doku: guests//… oder Host-README verlinken +[ ] Doku: pveX/guests//… oder Host-README verlinken ``` --- @@ -195,7 +195,7 @@ docker ps --filter network=docbr0 | Gast | Docker-Subnetz | Host (Mgmt) | Detail-Doku | |------|----------------|-------------|-------------| -| VM 101 ubuntu (pve1) | `10.2.2.0/24` (`docbr0`) | `192.168.10.10` | [guests/vm101-ubuntu/docbr0-opnsense-routing.md](../guests/vm101-ubuntu/docbr0-opnsense-routing.md) | +| VM 101 ubuntu (pve1) | `10.2.2.0/24` (`docbr0`) | `192.168.10.10` | [pve1/guests/vm101-ubuntu/docbr0-opnsense-routing.md](../pve1/guests/vm101-ubuntu/docbr0-opnsense-routing.md) | Weitere Docker-Hosts: gleiches Muster — eigenes Subnetz wählen, der **Host** wird Gateway (`.1` der Bridge), OPNsense-Route zeigt auf die **Mgmt-IP** des Hosts. @@ -206,5 +206,5 @@ Weitere Docker-Hosts: gleiches Muster — eigenes Subnetz wählen, der **Host** | Dokument | Inhalt | |----------|--------| | [infrastruktur-netzwerk.md](infrastruktur-netzwerk.md) | VLANs, Proxmox, OPNsense-Rollen | -| [guests/vm101-ubuntu/README.md](../guests/vm101-ubuntu/README.md) | Stacks + docbr0-IP-Tabelle | +| [pve1/guests/vm101-ubuntu/README.md](../pve1/guests/vm101-ubuntu/README.md) | Stacks + docbr0-IP-Tabelle | | [pve1/scripts/vm101-docker-nat-rules.sh](../pve1/scripts/vm101-docker-nat-rules.sh) | Container-Internet bei `iptables: false` |