Zum Inhalt springen

Self-Hosting

Du kannst den gesamten Pia-Stack mit Docker Compose auf deiner eigenen Infrastruktur betreiben.

  • Docker und Docker Compose
  • Eine Domain mit konfiguriertem DNS
  • Mindestens 1 GB RAM
  1. Hol dir das Deployment-Paket:

Pia Server ist source-available. Frag den Server-Quellcode, die unten verwendeten Deployment-Dateien (docker-compose.prod.yml, .env.example, Caddyfile) und den Zugriff auf die Container-Images unter kontakt@pia-ai.de an — dieselbe Adresse, die auch die Lizenz ausstellt. Entpacke, was du zurückbekommst, und führe die weiteren Schritte in diesem Verzeichnis aus.

  1. Kopiere und konfiguriere die Umgebungsdatei:
Terminal-Fenster
cp .env.example .env.prod
  1. Setze die erforderlichen Umgebungsvariablen in .env.prod:
JWT_SECRET_KEY=<generiere-einen-zufälligen-64-Zeichen-String>
ENCRYPTION_MASTER_KEY=<generiere-einen-zufälligen-64-Zeichen-String>
POSTGRES_PASSWORD=<starkes-Passwort>
  1. Starte die Services:
Terminal-Fenster
docker compose -f docker-compose.prod.yml up -d

Der Produktions-Stack besteht aus:

Service Image Port Zweck
Caddy caddy:2-alpine 80, 443 Reverse Proxy + automatisches HTTPS
Pia Server ghcr.io/pia-ai-dev/pia-server 8080 API-Server
PostgreSQL postgres:17-alpine 5432 Datenbank

Trage deine Domain im Caddyfile ein:

deine-domain.de {
reverse_proxy pia-server:8080
}

Caddy besorgt sich TLS-Zertifikate automatisch über Let’s Encrypt.

Terminal-Fenster
docker compose -f docker-compose.prod.yml pull
docker compose -f docker-compose.prod.yml up -d