docs(config): .env.example beschreibt nur noch den Betrieb

Vier Schlüssel darin steuerten den mitgelieferten Collabora-Container
statt Aether: OFFICE_ALIASGROUP, OFFICE_SSL, OFFICE_SSL_TERMINATION,
OFFICE_PORT. Wer Office selbst betreibt, richtet das in dessen eigener
Compose-Datei ein – in einer Vorlage für den Betrieb der Anwendung haben
sie nichts zu suchen.

Sie stehen jetzt kommentiert in build/docker-compose.yml, wo sie wirken;
die Erklärung zu aliasgroup1 (regulärer Ausdruck, Punkte maskieren, Port
anhängen) ist dorthin mitgewandert. Die Rückfallwerte im Compose gab es
schon, ein frischer Aufbau ohne diese vier läuft also weiter.

Meilisearch ist als "noch nicht gebaut" gekennzeichnet, statt einen
Schalter vorzutäuschen: Kein Go-Code liest die beiden Werte, gesucht wird
mit der Volltextsuche von Postgres.

Der Rest bleibt ausführlich – die Vorlage ist auch die Übersicht, was
möglich ist.

Gegengeprüft: Beide Compose-Dateien lösen mit der gekürzten Vorlage als
einziger .env sauber auf; Collabora bekommt aus den Rückfällen
aliasgroup1=http://app:8080 und ssl.enable=false.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
marcandClaude Opus 5 committed 2026-09-02 17:03:34 +02:00
1 parent 471679ff64
commit 69912081dd
3 files changed
+33 -27

No files matched your search

+11 -18
View File
@@ -1,9 +1,13 @@
# Aether – alle Einstellungen. cp .env.example .env
# Aether – alle Einstellungen des Betriebs. cp .env.example .env
#
# Diese Datei gilt für beides: den Betrieb mit dem fertigen Abbild
# (docker-compose.example.yml hier im Wurzelverzeichnis) und die Entwicklung
# aus dem Quelltext (build/docker-compose.yml, liest build/.env).
# Für die Entwicklung: cp .env.example build/.env
# Hier steht, was die ANWENDUNG liest. Nichts davon hängt daran, ob du das
# fertige Abbild ziehst (docker-compose.example.yml) oder selbst baust
# (build/docker-compose.yml) – zum Entwickeln: cp .env.example build/.env
#
# Was NICHT hier steht: die Schalter des mitgelieferten Collabora-Containers
# (aliasgroup1, ssl, Port). Die gehören zum Compose, das ihn startet, und
# stehen kommentiert in build/docker-compose.yml. Wer Office selbst betreibt,
# richtet sie in dessen eigener Compose-Datei ein.
#
# Zwei Fallen beim Bearbeiten:
# $ im Wert → als $$ schreiben, sonst schneidet Compose ab
@@ -139,20 +143,9 @@ HONEYBAR_ORIGIN=
# Aether – dann schickt der Browser die HoneyOS-Sitzung nicht mit.
HONEYBAR_KEY=
# ══ Nur für build/docker-compose.yml ══════════════════════════════════════════
# Diese vier steuern den Office-Container aus dem Entwicklungs-Compose. Beim
# Betrieb mit eigenem Office-Container stehen sie in dessen Compose-Datei.
#
# Wer seine Dateien in Collabora öffnen darf – derselbe Host wie in
# OFFICE_WOPI_URL, aber als regulärer Ausdruck: Punkte maskieren, Port
# anhängen. Fehlt er, lehnt Collabora ab:
# "No authorized hosts found matching the target host […] in config"
OFFICE_ALIASGROUP=https://cloud\.example\.com:443
OFFICE_SSL=false
OFFICE_SSL_TERMINATION=false # true nur, wenn davor wirklich HTTPS endet
OFFICE_PORT=9980
# ══ Später ════════════════════════════════════════════════════════════════════
# NOCH NICHT GEBAUT – Notiz, kein Schalter. Gesucht wird derzeit mit der
# Volltextsuche von Postgres; diese beiden Werte liest niemand.
# MEILISEARCH_URL=http://meilisearch:7700
# MEILISEARCH_KEY=
+12 -9
View File
@@ -44,12 +44,16 @@ Zwei Wege, je nachdem was du vorhast:
| **Betreiben** | `docker-compose.example.yml` im Wurzelverzeichnis. Zieht das fertige Abbild, braucht keinen Quelltext. |
| **Entwickeln** | `build/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 im Bau-Ordner), 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.
Die **`.env.example` im Wurzelverzeichnis gilt für beide** – sie beschreibt,
was die Anwendung liest, und das ist in beiden Fällen dasselbe. Sie lag bis zum
02.09.2026 doppelt vor (einmal schlank hier, einmal vollständig im Bau-Ordner),
und die beiden liefen auseinander: Der produktiven fehlten am Ende zwölf
Schlüssel, darunter `SESSION_MAX_AGE`.
Die Schalter des **mitgelieferten Collabora-Containers** (`aliasgroup1`, SSL,
Port) stehen nicht dort, sondern kommentiert in `build/docker-compose.yml` –
sie konfigurieren einen fremden Container, nicht Aether. Wer Office selbst
betreibt, richtet sie in dessen eigener Compose-Datei ein.
### 1. Dateien holen
@@ -91,9 +95,8 @@ ADMIN_PASSWORD= # nach dem ersten Start wieder leeren
```
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.
Erklärung in derselben Datei, nach Abschnitten geordnet. Absichtlich
ausführlich: Sie ist auch die Übersicht darüber, was überhaupt geht.
### 3. Starten
+10
View File
@@ -76,6 +76,16 @@ services:
profiles: ["office"]
restart: unless-stopped
environment:
# Wer seine Dateien in Collabora öffnen darf. Derselbe Host wie in
# OFFICE_WOPI_URL, aber als regulärer Ausdruck: Punkte maskieren, Port
# anhängen – etwa OFFICE_ALIASGROUP=https://cloud\.example\.com:443.
# Fehlt er, lehnt Collabora ab: "No authorized hosts found matching the
# target host […] in config".
#
# Diese vier Werte (aliasgroup, ssl, ssl.termination, Port) stehen
# bewusst NICHT in .env.example: Die beschreibt, was die Anwendung liest.
# Hier konfigurierst du einen fremden Container – wer Office selbst
# betreibt, tut das in dessen eigener Compose-Datei.
aliasgroup1: ${OFFICE_ALIASGROUP:-http://app:8080}
# ssl.termination=true nur, wenn davor wirklich HTTPS endet – sonst
# verlangt Collabora eine wss://-Verbindung, die es nicht gibt, und der