fix: Betriebsskripte fehlten im Docker-Abbild
Das Verzeichnis scripts/ wurde beim Bauen nie in die Laufzeitstufe
uebernommen. Der in der Anleitung dokumentierte Befehl
docker compose exec app node scripts/totp-geheimnis.mjs ...
endete deshalb mit "Cannot find module". Betroffen war nicht nur dieses
eine Skript, sondern alle, die im laufenden Behaelter gedacht sind - auch
wartungsschluessel.mjs und schluessel-erzeugen.mjs.
Kopiert wird jetzt das ganze Verzeichnis, nicht einzelne Dateien. Sonst
faellt beim naechsten Betriebsskript wieder auf, dass es fehlt - und zwar
erst dann, wenn man es braucht. Die Entwicklungsskripte darin laufen dort
mangels Werkzeugen nicht, kosten aber nur ein paar Kilobyte.
Geprueft im fertigen Abbild und gegen eine echte Datenbank: Das Skript
liegt unter /app/scripts, laeuft als Benutzer cockpit und gibt dasselbe
Geheimnis aus wie auf dem Entwicklungsrechner.
Die Anleitung nennt jetzt zusaetzlich den Weg fuer alle, die noch eine
aeltere Fassung laufen haben und nicht sofort aktualisieren wollen:
docker compose cp legt die Datei einmalig in den Behaelter.
Etappe: 8
Phase: Haertung
This commit is contained in:
+33
-1
@@ -26,6 +26,37 @@ Wiederherstellung*.
|
||||
|
||||
_Noch nichts._
|
||||
|
||||
## [1.0.1] – 2026-08-22
|
||||
|
||||
### Behoben
|
||||
|
||||
- **Betriebsskripte fehlten im Docker-Abbild.** Das Verzeichnis `scripts/`
|
||||
wurde beim Bauen nie in die Laufzeitstufe übernommen. `docker compose
|
||||
exec app node scripts/totp-geheimnis.mjs …` endete deshalb mit
|
||||
`Cannot find module`. Betroffen waren alle Skripte, die im laufenden
|
||||
Behälter gedacht sind — auch `wartungsschluessel.mjs` und
|
||||
`schluessel-erzeugen.mjs`.
|
||||
|
||||
Nach dem Update funktioniert der Befehl wie dokumentiert. Wer nicht
|
||||
gleich aktualisieren will, kommt einmalig auch so an das Skript:
|
||||
|
||||
```bash
|
||||
docker compose cp scripts/totp-geheimnis.mjs app:/app/totp-geheimnis.mjs
|
||||
docker compose exec app node totp-geheimnis.mjs deine@adresse.de
|
||||
```
|
||||
|
||||
### Hinzugefügt
|
||||
|
||||
- **`scripts/totp-geheimnis.mjs`** — liest das TOTP-Geheimnis eines Zugangs
|
||||
aus, um denselben Zugang auf einem zweiten Gerät einzurichten (Handy und
|
||||
Tablet, oder ein Ersatzgerät). Die Anwendung zeigt das Geheimnis sonst
|
||||
nur einmal an, beim Einrichten; bisher blieb nur, den zweiten Faktor
|
||||
zurückzusetzen und alle Wiederherstellungscodes neu zu erzeugen.
|
||||
|
||||
Das Skript läuft nur auf dem Server und nur mit Zugriff auf die Datenbank
|
||||
**und** auf `ENC_KEY_V1`. Wer beides hat, kann ohnehin alles lesen — es
|
||||
ist also keine Hintertür, sondern erspart eine unnötige Neueinrichtung.
|
||||
|
||||
## [1.0.0] – 2026-08-22
|
||||
|
||||
Erste vollständige Fassung. Alle acht Etappen umgesetzt, alle
|
||||
@@ -188,5 +219,6 @@ Was davon wann angegangen wird, steht in [`docs/ROADMAP.md`](docs/ROADMAP.md).
|
||||
|
||||
---
|
||||
|
||||
[Unveröffentlicht]: https://git.wilde-server.de/florian.wilde/betreuungs-cockpit/compare/v1.0.0...HEAD
|
||||
[Unveröffentlicht]: https://git.wilde-server.de/florian.wilde/betreuungs-cockpit/compare/v1.0.1...HEAD
|
||||
[1.0.1]: https://git.wilde-server.de/florian.wilde/betreuungs-cockpit/compare/v1.0.0...v1.0.1
|
||||
[1.0.0]: https://git.wilde-server.de/florian.wilde/betreuungs-cockpit/releases/tag/v1.0.0
|
||||
|
||||
Reference in New Issue
Block a user