Doku: Wo die Daten liegen, wie man sie prüft, und drei Fallen im Betrieb #46
Notifications
Total Time Spent: 4 minutes
florian.wilde
4 minutes
No due date set.
Dependencies
No dependencies set.
Reference: florian.wilde/betreuungs-cockpit#46
Reference in New Issue
Block a user
Was fehlt
Aus einer Fehlersuche am 31.08.2026 sind vier Lücken in der Dokumentation übriggeblieben. Alle vier haben die Suche verlängert.
1. Es steht nirgends, wo die Daten liegen
Ein neuer Abschnitt zwischen Schritt 11 und Aktualisieren in
INSTALLATION.md:minio-daten, Datenbank inpostgres-daten, Sicherungen unter./backupsdocker volume inspect …)ENC_KEY_V1,SICHERUNG_PASSWORT, ggf.MINIO_KMS_SECRET_KEYHinweis: Sobald #41 umgesetzt ist, ändert sich die Aussage zur Sicherung. Am besten danach schreiben oder beim Umsetzen von #41 mitziehen.
2. Der
mc-Alias überlebt kein Neuerstellen des ContainersSchritt 6 setzt ihn einmalig:
Er liegt in
/root/.mcim Container. Nach jedemdocker compose up -d minioist er weg, undmc ls lokalliefert kommentarlos nichts — man hält seine Dokumente für verschwunden. Genau das ist passiert.Alle
mc-Aufrufe in der Doku auf die selbsttragende Form umstellen:Das nimmt die Zugangsdaten aus den Variablen des Containers — kein
source .env, keine Passwörter in der Befehlszeile, überlebt jeden Neustart.3. Der Bucket-Name ist hartkodiert
Schritt 6 legt
lokal/betreuungs-cockpitan, die Anwendung liest den Namen aber ausS3_BUCKET. Weicht der ab, zeigen beide aneinander vorbei."lokal/$S3_BUCKET"benutzen.4.
set -a && source .envüberstimmt spätere ÄnderungenDie Doku empfiehlt das an zwei Stellen, sagt aber nicht, dass die exportierten Werte anschließend jedes
docker compose upüberstimmen — Shell-Variablen haben Vorrang vor der.env-Datei. Wer danach die.envändert und neu startet, sieht keine Wirkung und sucht den Fehler überall, nur nicht in der eigenen Shell.Ein Warnkasten an beiden Stellen, mit dem Hinweis auf
unsetoder eine frische Shell.5. Nebenbei
docker-compose.override.ymlin die.gitignoreaufnehmen und in der Doku als vorgesehenen Ort für eigene Anpassungen benennen.update.shprüft nur versionierte Dateien (--untracked-files=no) und lässt sie deshalb in Ruhe — das ist der saubere Weg für Anpassungen, die ein Update überleben sollen.Akzeptanzkriterien
mc-Aufruf in der Doku setzt einen zuvor angelegten Alias voraus.source .env-Falle ist an beiden Fundstellen benannt.docker-compose.override.ymlist ignoriert und dokumentiert.🚀 Umgesetzt und nach
mainübernommen.Vorgehen
source .env, kein fester Name, und er funktioniert nach jedem Neustart.docker-compose.override.ymlin.gitignoreund als vorgesehener Ort dokumentiert.tests/anleitung.test.ts— neun Prüfungen.Die Reihenfolge hat sich gelohnt. Dieses Issue stand bewusst zuletzt: Die Aussage zur Sicherung hätte sonst zweimal geschrieben werden müssen. Jetzt steht dort schlicht „ja" statt einer Warnung.
Die Anleitung wird wie Code geprüft. Der Test liest den Text und besteht darauf: kein
mc-Aufruf ohnemc alias setim selben Block, kein fest verdrahteter Bucket-Name, keinsource .envaußerhalb einer Erklärung, der Abschnitt vorhanden, alle drei Schlüssel genannt. Gegen vier Mutationen abgesichert.Das ist ungewöhnlich für Dokumentation, aber hier angebracht: Alle vier Fallen waren sprachlich einwandfrei und trotzdem falsch. Ein Korrekturleser hätte sie nicht gefunden.
Geprüft: 769 Unit-Tests ·
tscsauber · Lint sauberPull Request: #53 (gemergt)