Vereinheitlichte Bereitstellung Beta
tip
Diese Lösung befindet sich in der Beta-Phase und ist für den persönlichen Gebrauch bestimmt. Geschäftspläne sollten die offiziell unterstützte, standardmäßige Bereitstellungsoption verwenden.
Während sich die selbstgehostete Bereitstellung von Bitwarden Unified in der Betaphase befindet, sollten diejenigen, die Unified installieren, keine automatischen Upgrade-Verfahren einrichten, die die neuesten verfügbaren Images abrufen. Bitwarden empfiehlt, etwas Zeit für die Stabilisierung einer Veröffentlichung zu lassen, bevor Sie upgraden.
Dieser Artikel führt Sie durch die Installation und den Start der einheitlichen, selbst gehosteten Bitwarden-Bereitstellung. Verwenden Sie diese Bereitstellungsmethode, um:
Vereinfachen Sie die Konfiguration und optimieren Sie die Ressourcennutzung (CPU, Speicher) durch die Bereitstellung von Bitwarden mit einem einzigen Docker-Image.
Nutzen Sie verschiedene Datenbanklösungen wie MSSQL, PostgreSQL, SQLite und MySQL/MariaDB.
Laufen Sie auf ARM-Architektur für alternative Systeme wie Raspberry Pi und NAS-Server.
Systemanforderungen
Die einheitliche Bereitstellung von Bitwarden erfordert:
Mindestens 200 MB RAM
Speicher 1GB
Docker Engine 19+
Docker installieren
Die einheitliche Bereitstellung wird auf Ihrem Rechner in einem
Installieren Sie Docker auf Ihrem Gerät, bevor Sie mit der Installation fortfahren. Beziehen Sie sich auf die folgende Docker-Dokumentation für Hilfe:
Führen Sie Bitwarden vereinheitlicht aus
Die einheitliche Bereitstellung kann mit dem Befehl docker run ausgeführt werden (siehe
Umgebungsvariablen festlegen
Das Ausführen der einheitlichen Bereitstellung erfordert, dass Umgebungsvariablen für den Container festgelegt werden. Umgebungsvariablen können durch Erstellen einer settings.env Datei festgelegt werden, von der Sie ein Beispiel in unserem --env Flagge, wenn Sie die docker run Methode verwenden. Mehrere optionale Variablen stehen zur Verfügung, um ein personalisierteres, einheitliches Bereitstellungserlebnis zu ermöglichen. Zusätzliche Details zu diesen Variablen können
Setzen Sie mindestens Werte für die Variablen, die unter dem Abschnitt # Erforderliche Einstellungen # der Beispiel-.env-Datei fallen:
Variable | Beschreibung |
|---|---|
BW-DOMAINE | Ersetzen Sie |
BW_DB_ANBIETER | Der Datenbankanbieter, den Sie für Ihren Bitwarden-Server verwenden werden. Verfügbare Optionen sind |
BW_DB_SERVER | Der Name des Servers, auf dem Ihre Datenbank läuft. |
BW_DB_DATENBANK | Der Name Ihrer Bitwarden-Datenbank. |
BW_DB_BENUTZERNAME | Der Benutzername für den Zugriff auf die Bitwarden-Datenbank. |
BW_DB_PASSWORT | Das Passwort für den Zugriff auf die Bitwarden-Datenbank. |
BW_DB_DATEI | Nur erforderlich für |
BW_INSTALLATIONS_ID | Eine gültige Installations-ID, generiert von |
BW_INSTALLATIONSSCHLÜSSEL | Ein gültiger Installations-Schlüssel, generiert von |
note
Im Gegensatz zur Standardbereitstellung von Bitwarden kommt die einheitliche Bereitstellung nicht direkt mit einer Datenbank. Sie können eine vorhandene Datenbank verwenden oder eine neue erstellen, wie in BW_DB_... Variablen eingeben.
Die Verwendung von Nicht-MSSQL-Datenbankanbietern kann zu Leistungsproblemen führen, da die Unterstützung für diese Plattformen während der gesamten Beta-Phase weiterhin bearbeitet wird. Bitte verwenden Sie
Mit Docker ausführen
Die einheitliche Bereitstellung kann mit dem Befehl docker run ausgeführt werden, wie im folgenden Beispiel:
Bashdocker run -d --name bitwarden -v /$(pwd)/bwdata/:/etc/bitwarden -p 80:8080 --env-file settings.env ghcr.io/bitwarden/lite
Der oben angezeigte Befehl hat mehrere erforderliche Optionen für den docker run Befehl, einschließlich:
Name, Kurzform | Beschreibung |
|---|---|
--abtrennen , -d | Führen Sie den Container im Hintergrund aus und drucken Sie die Container-ID. |
--Name | Geben Sie einen Namen für den Container an. |
--Lautstärke , -v | Binden Sie ein Volume. Mindestens, mounten Sie |
--veröffentlichen , -v | Karten Sie Container-Ports auf den Host zu. Das Beispiel zeigt den gemappten Port |
--env-Datei | Pfad der |
Sobald Sie den Befehl ausgeführt haben, überprüfen Sie, ob der Container läuft und gesund ist mit:
Bashdocker ps
Gratulation! Ihre einheitliche Bereitstellung ist jetzt unter https://your.domain.com in Betrieb. Besuchen Sie den Web-Tresor in Ihrem Browser, um zu bestätigen, dass er funktioniert. Sie können sich jetzt ein neues Konto registrieren und anmelden.
Mit Docker Compose verwenden
Das Ausführen der einheitlichen Bereitstellung mit Docker Compose erfordert Docker Compose Version 1.24 oder höher. Um die einheitliche Bereitstellung mit Docker Compose auszuführen, erstellen Sie eine docker-compose.yml Datei, zum Beispiel:
Bash---
version: "3.8"
services:
bitwarden:
depends_on:
- db
env_file:
- settings.env
image: ghcr.io/bitwarden/lite
restart: always
ports:
- "80:8080"
volumes:
- bitwarden:/etc/bitwarden
db:
environment:
MARIADB_USER: "bitwarden"
MARIADB_PASSWORD: "super_strong_password"
MARIADB_DATABASE: "bitwarden_vault"
MARIADB_RANDOM_ROOT_PASSWORD: "true"
image: mariadb:10
restart: always
volumes:
- data:/var/lib/mysql
volumes:
bitwarden:
data:In der docker-compose.yml Datei, nehmen Sie alle gewünschten Konfigurationen vor, einschließlich:
Zuordnung von Volumen für Protokolle und Bitwarden-Daten.
Ports mappen.
Konfigurieren eines Datenbankbildes.
ª
ª Richten Sie eine Datenbank nur in docker-compose.yml ein, wie im obigen Beispiel, wenn Sie einen neuen Datenbankserver zur Verwendung mit Bitwarden erstellen möchten. Beispielkonfigurationen für MySQL, MSSQL und PostgreSQL sind in unserer
Sobald Ihre docker-compose.yml und settings.env Datei erstellt sind, starten Sie Ihren vereinheitlichten Server durch Ausführen von:
Bashdocker compose up -d
Überprüfen Sie, ob alle Container korrekt laufen:
Bashdocker ps
Gratulation! Ihre einheitliche Bereitstellung ist jetzt unter https://your.domain.com in Betrieb. Besuchen Sie den Web-Tresor in Ihrem Browser, um zu bestätigen, dass er funktioniert. Sie können sich jetzt ein neues Konto registrieren und anmelden.
Aktualisieren Sie Ihren Server
Um Ihre einheitliche Bereitstellung zu aktualisieren:
Stoppen Sie den laufenden Docker-Container:
Bashdocker stop bitwardenEntfernen Sie den Docker-Container:
Bashdocker rm bitwardenFühren Sie den folgenden Befehl aus, um das aktuellste Bitwarden Unified-Image zu ziehen:
Bashdocker pull ghcr.io/bitwarden/liteStarten Sie den Docker-Container erneut:
Bashdocker run -d --name bitwarden -v /$(pwd)/bwdata/:/etc/bitwarden -p 80:8080 --env-file settings.env ghcr.io/bitwarden/lite
Umgebungsvariablen
Die einheitliche Bereitstellung wird standardmäßig ohne mehrere der standardmäßigen Bitwarden-Dienste betrieben. Dies ermöglicht eine erhöhte Anpassung und Optimierung Ihrer einheitlichen Bereitstellung. Konfigurieren Sie diese Dienste und weitere optionale Einstellungen, indem Sie verschiedene Umgebungsvariablen bearbeiten.
warning
Immer wenn Sie eine Umgebungsvariable ändern, muss der Docker-Container neu erstellt werden. Mehr dazu erfahren Sie
Webserver-Ports
Variable | Beschreibung |
|---|---|
BW_PORT_HTTP | Ändern Sie den Port, der für HTTP-Verkehr verwendet wird. Standardmäßig, |
BW_PORT_HTTPS | Ändern Sie den Port, der für HTTPS-Verkehr verwendet wird. Standardmäßig, |
SSL
Verwenden Sie diese Werte, um die Zertifikatseinstellungen zu ändern.
Variable | Beschreibung |
|---|---|
BW_ENABLE_SSL | Verwenden Sie SSL/TLS. |
BW_SSL_ZERTIFIKAT | Der Name Ihrer SSL-Zertifikatdatei. Die Datei muss sich im |
BW_SSL_SCHLÜSSEL | Der Name Ihrer SSL-Schlüsseldatei. Die Datei muss sich im |
BW_ENABLE_SSL_CA | Verwenden Sie SSL mit einem von einer Zertifizierungsstelle (CA) unterstützten Dienst. |
BW_SSL_CA_ZERTIFIKAT | Der Name Ihres SSL CA-Zertifikats. Die Datei muss sich im |
BW_ENABLE_SSL_DH | Verwenden Sie SSL mit Diffie-Hellman-Schlüsselaustausch. |
BW_SSL_DH_ZERTIFIKAT | Der Name Ihrer Diffie-Hellman-Parameterdatei. Die Datei muss sich im |
BW_SSL_PROTOCOLS | SSL-Version, die von NGINX verwendet wird. Für empfohlene Standardeinstellungen leer lassen. |
BW_SSL_CIPHERS | SSL-Ciphersuites, die von NGINX verwendet werden. Für empfohlene Standardeinstellungen leer lassen. |
note
Wenn Sie ein bestehendes SSL-Zertifikat verwenden, müssen Sie die entsprechenden SSL-Optionen in settings.env aktivieren. SSL-Dateien müssen in /etc/bitwarden gespeichert werden, auf die in der docker-compose.yml Datei verwiesen werden kann. Diese Dateien müssen den Namen entsprechen, die in settings.env konfiguriert sind.
Das Standardverhalten besteht darin, ein selbstsigniertes Zertifikat zu generieren, wenn SSL aktiviert ist und keine vorhandenen Zertifikatdateien an der erwarteten Stelle vorhanden sind (/etc/bitwarden).
Dienste
Zusätzliche Dienste können für spezifische Anwendungsfälle, wie Enterprise- oder Teambedürfnisse, durch Änderung der folgenden Werte aktiviert oder deaktiviert werden:
Variable | Beschreibung |
|---|---|
BW_ENABLE_ADMIN | Deaktivieren Sie diesen Dienst nicht. Erfahren Sie mehr über die Fähigkeiten des Administrator-Panels |
BW_ENABLE_API | Deaktivieren Sie diesen Dienst nicht. Standard |
BW_ENABLE_EVENTS | Aktivieren oder deaktivieren Sie Bitwarden Ereignisprotokolle für Teams und Enterprise-Ereignisüberwachung. Standard |
BW_ENABLE_ICONS | Aktivieren oder deaktivieren Sie Bitwarden-Markensymbole, die mit den URI's der Zugangsdaten-Einträge festgelegt sind. Mehr dazu erfahren Sie |
BW_ENABLE_IDENTITY | Deaktivieren Sie diesen Dienst nicht. Standard |
BW_AKTIVIERE_BENACHRICHTIGUNGEN | Aktivieren oder deaktivieren Sie Benachrichtigungsdienste, um Push-Benachrichtigungen auf mobile Geräte zu erhalten, mit Geräte-Zugangsdaten, mobiler Tresor-Synchronisation und mehr. Standard |
BW_ENABLE_SCIM | Aktivieren oder deaktivieren Sie SCIM für Enterprise-Organisationen. Standardmäßig |
BW_ENABLE_SSO | Aktivieren oder deaktivieren Sie SSO-Dienste für Enterprise-Organisationen. Standard |
BW_ICONS_PROXY_ZU_CLOUD | Die Aktivierung dieses Dienstes leitet Anfragen für den Icon-Dienst über Cloud-Dienste um, um die System-Speicherlast zu verringern. |
Post
Konfigurieren Sie die SMTP-Einstellungen für Ihre einheitliche Bereitstellung. Kopieren Sie Informationen von Ihrem gewählten Mail SMTP-Anbieter in die folgenden Felder:
Variable | Beschreibung |
|---|---|
globalSettings__mail__AntwortAnEmail | Geben Sie die Antwort-E-Mail-Adresse für Ihren Server ein. |
globalSettings__mail__smtp__host | Geben Sie die Domain des Hosts für Ihren SMTP-Server ein. |
globalSettings__mail__smtp__port | Geben Sie die Port-Nummer vom SMTP-Host ein. |
globaleEinstellungen__Mail__smtp__ssl | Wenn Ihr SMTP-Host SSL verwendet, geben Sie Setzen Sie den Wert auf |
globalSettings__mail__smtp__benutzername | Geben Sie den SMTP-Benutzername ein. |
globalSettings__mail__smtp__passwort | Geben Sie das SMTP-Passwort ein. |
Yubico API (YubiKey)
Variable | Beschreibung |
|---|---|
globaleEinstellungen__yubico__clientId | Ersetzen Sie den Wert durch die ID, die Sie von Ihrem Yubico Key erhalten haben. Melden Sie sich für Yubico Key |
globaleEinstellungen__yubico__Schlüssel | Geben Sie den Schlüsselwert ein, den Sie von Yubico erhalten haben. |
Datenbankkonfigurationen
Die Nutzung der Vielzahl von Datenbankoptionen, die mit der einheitlichen Bereitstellung kompatibel sind, erfordert zusätzliche .env Konfigurationen.
In settings.env:
Bash# Database
BW_DB_PROVIDER=mysql
BW_DB_SERVER=db
BW_DB_DATABASE=bitwarden_vault
BW_DB_USERNAME=bitwarden
BW_DB_PASSWORD=super_strong_passwordSonstiges
Variable | Beschreibung |
|---|---|
globaleEinstellungen__BenutzerregistrierungDeaktivieren | Aktivieren oder deaktivieren Sie die Registrierungsfähigkeiten für Benutzerkonten. |
globaleEinstellungen__hibpApiKey | Geben Sie den API-Schlüssel ein, der von Have I Been Pwnd bereitgestellt wurde. Registrieren Sie sich, um den API-Schlüssel |
adminEinstellungen__Admins | Geben Sie die E-Mail-Adressen des Administrators ein. |
BW_REAL_IPS | Definieren Sie echte IPs in |
BW_CSP | Content-Security-Policy-Parameter. Eine Neukonfiguration dieses Parameters kann Funktionen beschädigen. Durch die Änderung dieses Parameters übernehmen Sie die Verantwortung für die Aufrechterhaltung dieses Wertes. |
BW_DB_PORT | Geben Sie einen benutzerdefinierten Port für den Datenbankverkehr an. Wenn nicht angegeben, hängt der Standard von Ihrem gewählten Datenbankanbieter ab. |
Starten Sie den Container neu
Um Ihren Docker-Container nach dem Ändern von Umgebungsvariablen neu zu starten, führen Sie die folgenden Befehle aus dem Bitwarden-einheitlichen Bereitstellungsverzeichnis aus:
Stoppen Sie den laufenden Docker-Container:
Bashdocker stop bitwardenEntfernen Sie den Docker-Container:
Bashdocker rm bitwardenStarten Sie den Docker-Container erneut:
Bashdocker run -d --name bitwarden -v /$(pwd)/bwdata/:/etc/bitwarden -p 80:8080 --env-file settings.env ghcr.io/bitwarden/lite
Speicherverbrauch
Standardmäßig wird der Bitwarden-Container den verfügbaren Speicher verbrauchen, oft mehr als das Minimum, das zum Laufen benötigt wird. Für speicherbewusste Umgebungen können Sie docker -m oder --memory= verwenden, um die Speichernutzung des Bitwarden-Containers zu begrenzen.
Name, Kurzform | Beschreibung |
|---|---|
--speicher=, -s | Die maximale Menge an Speicher, die der Container verwenden kann. Bitwarden erfordert mindestens 200m. Siehe die |
Um den Speicherverbrauch mit Docker Compose zu steuern, verwenden Sie den Schlüssel mem_limit:
Bashservices: bitwarden: env_file: - settings.env image: ghcr.io/bitwarden/lite restart: always mem_limit: 200m
Berichterstattung über Probleme
Während die einheitliche Bereitstellung von Bitwarden weiterhin in der Beta-Version bleibt, ermutigen wir Sie, Probleme zu melden und Feedback über GitHub zu geben. Bitte verwenden Sie
Zusätzliche Ressourcen
Wenn Sie planen, eine Bitwarden Organisation selbst zu hosten, sehen Sie
eine Organisation selbst hostenum zu beginnen.
Für weitere Informationen zur standardmäßigen selbst gehosteten Bereitstellung von Bitwarden sehen Sie: