In letzter Zeit suchte ich eine Passwort-Lösung, welche ich auch auf meiner eigenen Hardware hosten kann.
Nach einiger Zeit bin ich bei dem Projekt Bitwarden https://bitwarden.com/ fündig geworden. OpenSource, für alle wichtigen Plattformen Apps verfügbar und mittels Docker auf eigener Infrastruktur einsatzfähig.
Nach einigem Testen habe ich mich für eine Ubuntu-VM mit Docker entschieden. Nach der Installation der Umgebung mit dem Installations-Shellscript und docker-compose sowie der Anpassung der Konfigurationsdateien konnte ich in relativ kurzer Zeit eine funktionsfähige Umgebung bauen.
Leider war die Freude nicht von besonders langer Dauer: Als ich einige Tage später die Ubuntu-VM für eine Wartung neu starten musste, blieb der Docker-Container mssql in einem Reboot-Loop hängen:
Server Error 87(The parameter is incorrect.) occurred while opening file '/var/opt/mssql/data/master.mdf' to obtain configuration information at startup. An invalid startup option might have caused the error. Verify your startup options, and correct or remove them if necessary.
Nach einigem Suchen im Internet stellte sich heraus, dass es hier Probleme mit den Docker-Volumes gibt, wenn auf dem Hostsystem (FreeNAS mit bhyve) ZFS eingesetzt wird.
Hier die Issue-Seiten:
https://github.com/bitwarden/server/issues/155
https://github.com/Microsoft/mssql-docker/issues/13
Eine Änderung der Datei docker-compose.yml im Pfad ./bwdata/docker/docker-compose.yml funktioniert nicht (mehr).
Nach einiger Suche bin ich auf die richtige Datei unter ./bwdata/config.yml gestoßen. Hier gibt es einen Parameter "database_docker_volume".
Diesen habe ich von
database_docker_volume: false
auf
database_docker_volume: true
geändert.
Nun müssen alle Docker-Container auf Basis der neuen Konfiguration neu erstellt werden. Achtung: Falls bereits Daten in Bitwarden gespeichert waren, sind diese danach verloren! Falls bereits die Desktop-App von Bitwarden verwendet wurde, kann im Cache-Modus noch ein JSON-Export der Daten angefertigt werden und diese wieder zurückgesichert werden.
/bitwarden.sh update
Danach startete der Docker-Datenbankcontainer fehlerfrei.