# RAPPORT-SERVER-PROXMOX-LXC > ⚠️ **Status: Alpha.** Baut auf [SERVER-CONTAINER](https://git.kgva.ch/karim/rapport-server) auf, das selbst noch nicht end-to-end läuft (siehe dortige „Bekannte offene Punkte"). Erst zum Testen gedacht, nicht für Produktion. Ein-Befehl-Installer, der den Rapport-Self-Hosting-Stack in einen **Proxmox-LXC-Container** deployt. Für Leute, die einen Proxmox-Host haben und Rapport nicht auf dem Mac (SERVER-APP), sondern auf dem Server laufen lassen wollen. Der vierte Deployment-Pfad der Rapport-Familie: | Repo | Zielgruppe | |---|---| | `APP` | Endnutzer (Desktop-Client) | | `SERVER-APP` | Mac-Mini-Selfhost per Doppelklick (Tauri) | | `SERVER-CONTAINER` | Docker-Compose von Hand (Tech-affin) | | **`SERVER-PROXMOX-LXC`** | **Proxmox-Homelab — ein Befehl, fertiger Container** | --- ## Was das Script macht Läuft auf der **Proxmox-VE-Host-Shell** und: 1. Lädt das Debian-12-Template (falls nicht vorhanden) 2. Erstellt einen **unprivilegierten** LXC mit `nesting=1,keyctl=1` (nötig für Docker) 3. Installiert Docker + Node im Container 4. Klont [SERVER-CONTAINER](https://git.kgva.ch/karim/rapport-server) nach `/opt/rapport` 5. Generiert zufällige `POSTGRES_PASSWORD` + `JWT_SECRET` und daraus passende `ANON_KEY` / `SERVICE_ROLE_KEY` 6. Setzt `SITE_URL` / `API_EXTERNAL_URL` auf die LAN-IP des Containers 7. Holt die DB-Migrations (`sync-migrations.sh`) 8. Startet den Stack mit `docker compose up -d` --- ## Benutzung Auf der **Proxmox-Host-Shell** (als root): ```bash bash -c "$(curl -fsSL https://git.kgva.ch/karim/rapport-server-proxmox-lxc/raw/branch/main/rapport-lxc.sh)" ``` Danach erreichbar unter `http://:8080`. ### Parameter (per Env-Var) Alle Defaults lassen sich überschreiben: ```bash RAM_MB=8192 DISK_GB=30 CT_HOSTNAME=rapport \ NET_IP=192.168.1.50/24 NET_GW=192.168.1.1 \ bash -c "$(curl -fsSL https://git.kgva.ch/karim/rapport-server-proxmox-lxc/raw/branch/main/rapport-lxc.sh)" ``` | Var | Default | Bedeutung | |---|---|---| | `CTID` | nächste freie ID | Container-ID | | `CT_HOSTNAME` | `rapport-server` | Hostname | | `CORES` | `2` | CPU-Kerne | | `RAM_MB` | `6144` | RAM (min. 4096 empfohlen) | | `SWAP_MB` | `2048` | Swap | | `DISK_GB` | `20` | Disk (Supabase-Images sind gross) | | `BRIDGE` | `vmbr0` | Netzwerk-Bridge | | `STORAGE` | `local-lvm` | Storage für rootfs | | `TMPL_STORAGE` | `local` | Storage für Template-Cache | | `NET_IP` | `dhcp` | `dhcp` oder z.B. `192.168.1.50/24` | | `NET_GW` | — | Gateway (Pflicht bei statischer IP) | | `PASSWORD` | — | root-Passwort im Container (leer = kein Login) | | `REPO_URL` | `…/rapport-server.git` | Quelle des Compose-Stacks | | `REPO_REF` | `main` | Branch/Tag | --- ## Voraussetzungen - Proxmox VE 8.x - ~20 GB freier Storage, ≥4 GB RAM für den Container - Internet-Zugang im Container (Docker-Images + Repos pullen) --- ## Verwaltung ```bash pct exec -- bash -c 'cd /opt/rapport && docker compose ps' # Status pct exec -- bash -c 'cd /opt/rapport && docker compose logs -f' # Logs pct enter # Shell ``` Backup (Postgres): ```bash pct exec -- bash -c 'cd /opt/rapport && docker compose exec -T db pg_dumpall -U postgres' > backup.sql ``` Oder einfach den ganzen LXC per Proxmox-Backup (vzdump) sichern. --- ## Lizenz GNU AGPL-3.0-or-later — identisch zur Rapport-Familie.