Docker-Compose-Quickstart
Installer ausführen, Erstkonfiguration abschließen und den Betrieb prüfen.
Vorab: Die öffentliche Veröffentlichung ist noch in Vorbereitung. Die Befehle setzen ein bereits vorhandenes, entpacktes Self-Hosted-Installationspaket voraus. Ersetze den Paketpfad im ersten Befehl durch dessen tatsächlichen Speicherort.
1. Installer prüfen und ausführen
cd /pfad/zum/entpackten/sermony-selfhosted
less install.sh
less deploy/web/setup.sh
sudo bash ./install.sh web
Die Auswahl web richtet den Sermony-Server ein. Der Installer fragt Domain, Zertifikats-E-Mail, Image-Version und SMTP-Werte ab. Er erzeugt fehlende Geheimnisse, legt die Installation unter /opt/sermony-web an und startet die mitgelieferte Compose-Konfiguration.
Verwende die Compose-Datei aus dem Paket. Die Dateiversion und die Images müssen zusammenpassen.
2. Start prüfen
cd /opt/sermony-web
sudo docker compose --env-file .env config --quiet
sudo docker compose ps
sudo docker compose logs --tail=100 web
Die Konfigurationsprüfung bleibt bei Erfolg ohne Ausgabe. Ein Dienst im Zustand Restarting oder unhealthy braucht weitere Prüfung; Details stehen in seinen Logs.
sudo docker compose logs --tail=100 postgres
sudo docker compose logs --tail=100 mediaserver
sudo docker compose logs --tail=100 caddy
Die Logausgabe kann personenbezogene Daten oder Zugangsdaten enthalten. Entferne diese, bevor du einen Auszug weitergibst.
3. Ersteinrichtung im Browser
Öffne https://sermony.example.com. Bei einer neuen Installation erscheint der Setup-Assistent.
- Öffne die Konfiguration lokal mit
sudoedit /opt/sermony-web/.env. - Übernimm den Wert von SETUP_TOKEN in den Assistenten.
- Lege das erste Administrationskonto an und schließe die Einrichtung ab.
- Lade eine Testpredigt hoch.
Sichere die Konfiguration einschließlich APP_ENCRYPTION_KEY geschützt. Ein neuer Schlüssel kann bestehende verschlüsselte Daten nicht entschlüsseln.
4. Konfiguration ändern
cd /opt/sermony-web
sudoedit .env
sudo docker compose --env-file .env config --quiet
sudo docker compose up -d
Die wichtigsten Werte stehen unter Umgebungsvariablen. Ein bloßes restart übernimmt geänderte Container-Umgebungsvariablen nicht.
5. Updates einspielen
Erstelle vor einem Update eine Sicherung von Datenbank, Medien und Konfiguration. Prüfe die Hinweise zur Zielversion und plane eine Unterbrechung ein.
cd /opt/sermony-web
sudo docker compose images
sudo docker compose pull
sudo docker compose up -d
sudo docker compose ps
sudo docker compose logs --tail=100 web
Der Tag stable wird erst durch einen erneuten Pull aktualisiert; er ist kein automatischer Update-Dienst. Für eine feste Version müssen die tatsächlichen Image-Referenzen in WEB_IMAGE und MEDIASERVER_IMAGE gesetzt werden. Nur SERMONY_TAG in der bereits erzeugten .env zu ändern, reicht nicht.
Das Zurücksetzen eines Image-Tags ist nach Datenbankänderungen kein verlässlicher Rollback. Dafür wird gegebenenfalls eine zur alten Version passende Sicherung benötigt.
Häufige Startprobleme
| Meldung oder Zustand | Nächster Schritt |
|---|---|
| Image nicht gefunden / Zugriff verweigert | Image-Referenzen und Zugang zum verwendeten Veröffentlichungskanal prüfen. Wiederholtes Starten löst einen fehlenden Release nicht. |
| Port bereits belegt | Mit sudo ss -ltnp den Dienst auf 80/443 ermitteln; Proxy-Konfiguration abstimmen. |
| HTTPS-Seite nicht erreichbar | DNS und Zertifikats-Logs prüfen, siehe Domain und HTTPS. |
| Web-Dienst startet wiederholt neu | Web- und Datenbank-Logs prüfen; vorhandene Geheimnisse nicht neu erzeugen. |