docs(config): eine .env.example statt zweier, die auseinanderliefen

Es gab sie doppelt: schlank im Wurzelverzeichnis (für den Betrieb) und
vollständig unter deploy/ (für die Entwicklung). Gedacht war das als
Arbeitsteilung, geworden ist es Drift. Der produktiven fehlten zwölf
Schlüssel – darunter SESSION_MAX_AGE, STORAGE_PATH und die
HoneyOS-Leiste –, und sie empfahl für OFFICE_WOPI_URL weiterhin
app:8080, also genau den Wert, an dem Collabora den Rahmen verweigert.

Jetzt eine Datei im Wurzelverzeichnis für beides, nach Abschnitten
geordnet, mit einem eigenen Abschnitt für die vier Werte, die nur den
Entwicklungs-Compose betreffen. deploy/.env.example ist weg, die
Verweise in README, TESTING und deploy/docker-compose.yml zeigen auf die
verbliebene Datei.

Gegengeprüft: Jeder Schlüssel, den config.go liest, kommt darin vor
(40 Stück, kein Rest). Ein Container mit dieser Datei als env_file
liefert die erwarteten Werte, auch den maskierten OFFICE_ALIASGROUP.

Dabei selbst in die dokumentierte Falle getappt und wieder heraus:
"OFFICE_PROVIDER=  # collabora | onlyoffice" macht den Kommentar zum
Wert. Der Test aus TESTING.md hat es gefunden.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
marcandClaude Opus 5 committed 2026-09-02 00:59:00 +02:00
1 parent aa8af418f2
commit a7a67da040
5 files changed
+135 -189

No files matched your search

+16 -14
View File
@@ -41,8 +41,15 @@ Zwei Wege, je nachdem was du vorhast:
| | |
|---|---|
| **Betreiben** | `docker-compose.example.yml` + `.env.example` im Wurzelverzeichnis. Zieht das fertige Abbild, braucht keinen Quelltext. |
| **Entwickeln** | `deploy/docker-compose.yml` + `deploy/.env.example`. Baut aus dem Quelltext, kennt alle Schalter. |
| **Betreiben** | `docker-compose.example.yml` im Wurzelverzeichnis. Zieht das fertige Abbild, braucht keinen Quelltext. |
| **Entwickeln** | `deploy/docker-compose.yml`. Baut aus dem Quelltext. |
Die **`.env.example` im Wurzelverzeichnis gilt für beide** – eine Datei, alle
Einstellungen. Sie lag bis zum 02.09.2026 doppelt vor (einmal schlank hier,
einmal vollständig unter `deploy/`), und die beiden liefen auseinander: Der
produktiven fehlten am Ende zwölf Schlüssel, darunter `SESSION_MAX_AGE`, und
sie empfahl für `OFFICE_WOPI_URL` einen Wert, der mit Collabora nicht
funktioniert.
### 1. Dateien holen
@@ -66,7 +73,7 @@ cd aether
```bash
cp .env.example .env # beim Betreiben
cp deploy/.env.example deploy/.env # beim Entwickeln
cp .env.example deploy/.env # beim Entwickeln (dorthin schaut das Compose)
```
Ausfüllen musst du mindestens:
@@ -83,9 +90,10 @@ ADMIN_USERNAME=admin
ADMIN_PASSWORD= # nach dem ersten Start wieder leeren
```
Die schlanke `.env.example` im Wurzelverzeichnis führt nur diese Pflichtwerte
und Office. Alles Weitere – OIDC, OCR, Vorschaubilder, Kontingente – steht mit
Erklärung in `deploy/.env.example`.
Alles Weitere – Sitzungsdauer, OIDC, Office, OCR, App-Umschalter – steht mit
Erklärung in derselben Datei, nach Abschnitten geordnet. Der letzte Abschnitt
gilt nur für den Entwicklungs-Compose; beim Betrieb mit eigenem
Office-Container stehen diese Werte in dessen Compose-Datei.
### 3. Starten
@@ -121,14 +129,8 @@ Direkt (ohne Proxy): http://localhost:8080/health
## Einstellungen
Zwei Beispieldateien, je nach Zweck:
| | |
|---|---|
| `.env.example` (Wurzel) | das Nötigste zum Betreiben |
| `deploy/.env.example` | alle Schalter, auch die optionalen |
Beide sind knapp gehalten – was dahintersteckt, steht hier.
**Eine** Beispieldatei: `.env.example` im Wurzelverzeichnis, für Betrieb wie
Entwicklung. Sie ist knapp gehalten – was dahintersteckt, steht hier.
### Was schiefgeht, wenn man es falsch setzt