Unified Deployment beta
tip
Denna lösning är i beta och avsedd för personligt bruk. Affärsplaner bör använda det officiellt stödda standardinstallationsalternativet.
Medan Bitwarden unified self-hosted distribution är i beta, bör de som installerar unified inte ställa in automatiska uppgraderingsprocedurer som hämtar de senaste tillgängliga bilderna. Bitwarden rekommenderar att du tillåter lite tid för stabilisering av en release innan du uppgraderar.
Den här artikeln kommer att leda dig genom att installera och lansera Bitwarden unified self-hosted distribution. Använd den här distributionsmetoden för att:
Förenkla konfigurationen och optimera resursanvändningen (CPU, minne) genom att distribuera Bitwarden med en enda Docker-bild.
Använd olika databaslösningar som MSSQL, PostgreSQL, SQLite och MySQL/MariaDB. Endast Unified distributioner kan för närvarande utnyttja dessa databaser, standarddistributioner kräver MSSQL.
Kör på ARM-arkitektur för alternativa system som Raspberry Pi och NAS-servrar.
Systemkrav
Bitwarden unified distribution kräver:
Minst 200 MB RAM
Lagring 1GB
Docker Engine 26+
Installera Docker
Den enhetliga distributionen kommer att köras på din dator med en Docker-behållare. Den enhetliga distributionen kan köras med vilken Docker-utgåva eller plan som helst. Utvärdera vilken utgåva som är bäst för din installation.
Installera Docker på din maskin innan du fortsätter med installationen. Se följande Docker-dokumentation för hjälp:
Kör Bitwarden unified
Den enhetliga distributionen kan köras med kommandot docker run (se här) eller med Docker Compose (se här). I båda fallen måste du ange miljövariabler för behållaren.
Snabbstartguide
Använd docker run för att starta Bitwarden på en Raspberry Pi:
Ange miljövariabler
Att köra den förenade distributionen kräver att miljövariabler ställs in för behållaren. Miljövariabler kan specificeras genom att skapa en settings.env-fil, som du kan hitta ett exempel på i vårt GitHub-förråd, eller genom att använda flaggan --env om du använder docker run-metoden. Flera valfria variabler är tillgängliga för användning för en mer personlig enhetlig implementeringsupplevelse. Ytterligare information om dessa variabler finns här.
Ange åtminstone värden för variablerna som faller under avsnittet # Required Settings # i exemplet .env-fil:
Variabel | Beskrivning |
|---|---|
BW_DOMAIN | Ersätt |
BW_DB_PROVIDER | Databasleverantören du kommer att använda för din Bitwarden-server. Tillgängliga alternativ är |
BW_DB_SERVER | Namnet på servern som din databas körs på. |
BW_DB_DATABASE | Namnet på din Bitwarden-databas. |
BW_DB_USERNAME | Användarnamnet för åtkomst till Bitwarden-databasen. |
BW_DB_PASSWORD | Lösenordet för åtkomst till Bitwarden-databasen. |
BW_DB_FILE | Krävs bara för |
BW_INSTALLATION_ID | Ett giltigt installations-ID genererat från https://bitwarden.com/host/. |
BW_INSTALLATION_KEY | En giltig installationsnyckel genererad från https://bitwarden.com/host/. |
note
Till skillnad från Bitwardens standarddistribution, kommer enhetlig distribution inte direkt med en databas. Du kan använda en befintlig databas, eller skapa en ny enligt det här exemplet, och i båda fallen måste du ange giltig information i BW_DB_...-variablerna som dokumenteras här.
Att använda icke-MSSQL-databasleverantörer kan resultera i prestandaproblem, eftersom stödet för dessa plattformar fortsätter att arbetas med under hela betan. Använd den här problemmallen för att rapportera allt som har med din enhetliga Bitwarden-installation att göra och kolla in den här sidan för att spåra kända problem eller gå med i diskussionen.
Använder docker run
Den enhetliga distributionen kan köras med kommandot docker run, som i följande exempel:
Bashdocker run -d --name bitwarden -v /$(pwd)/bwdata/:/etc/bitwarden -p 80:8080 --env-file settings.env ghcr.io/bitwarden/lite
Kommandot ovan har flera nödvändiga alternativ för kommandot docker run, inklusive:
Namn, stenografi | Beskrivning |
|---|---|
--frigör , -d | Kör behållaren i bakgrunden och skriv ut behållar-ID. |
--namn | Ange ett namn för behållaren. |
--volym , -v | Bind montera en volym. Montera åtminstone / |
--publicera , -s | Kartlägg containerportar till värden. Exemplet visar porten |
--env-fil | Sökväg till filen att läsa miljövariabler från. Alternativt kan du använda |
När du har kört kommandot, verifiera att behållaren är igång och frisk med:
Bashdocker ps
Grattis! Din enhetliga implementering är nu igång på https://din.domän.com. Besök webbvalvet i din webbläsare för att bekräfta att det fungerar. Du kan nu registrera ett nytt konto och logga in.
Använda Docker Compose
Att köra den enhetliga distributionen med Docker Compose kräver Docker Compose version 1.24+. För att köra den enhetliga distributionen med Docker compose, skapa en docker-compose.yml-fil, till exempel:
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:I filen docker-compose.yml gör du önskade konfigurationer inklusive:
Mappning av volymer för loggar och Bitwarden-data.
Kartläggning av portar.
Konfigurera en databasavbildning.
ª
ªStäll bara in en databas i docker-compose.yml, som i exemplet ovan, om du vill skapa en ny databasserver att använda med Bitwarden. Exempelkonfigurationer för MySQL, MSSQL och PostgreSQL ingår i vår exempelfil.
När filen docker-compose.yml och settings.env har skapats startar du din enhetliga server genom att köra:
Bashdocker compose up -d
Kontrollera att alla behållare körs korrekt:
Bashdocker ps
Grattis! Din enhetliga implementering är nu igång på https://din.domän.com. Besök webbvalvet i din webbläsare för att bekräfta att det fungerar. Du kan nu registrera ett nytt konto och logga in.
Uppdatera din server
Så här uppdaterar du din enhetliga implementering:
Stoppa den pågående Docker-behållaren:
Bashdocker stop bitwardenTa bort Docker-behållaren:
Bashdocker rm bitwardenKör följande kommando för att dra den senaste Bitwarden unified bilden:
Bashdocker pull ghcr.io/bitwarden/liteKör Docker-behållaren igen:
Bashdocker run -d --name bitwarden -v /$(pwd)/bwdata/:/etc/bitwarden -p 80:8080 --env-file settings.env ghcr.io/bitwarden/lite
Miljövariabler
Den enhetliga distributionen kommer att fungera som standard utan flera av de vanliga Bitwarden-tjänsterna. Detta möjliggör ökad anpassning och optimering av din enhetliga implementering. Konfigurera dessa tjänster och fler valfria inställningar genom att redigera olika miljövariabler.
warning
När du ändrar en miljövariabel måste Docker-behållaren återskapas. Läs mer här.
Webserverportar
Variabel | Beskrivning |
|---|---|
BW_PORT_HTTP | Ändra porten som används för HTTP-trafik. Som standard, |
BW_PORT_HTTPS | Ändra porten som används för HTTPS-trafik. Som standard, |
SSL
Använd dessa värden för att ändra certifikatinställningar.
Variabel | Beskrivning |
|---|---|
BW_ENABLE_SSL | Använd SSL/TLS. |
BW_SSL_CERT | Namnet på din SSL-certifikatfil. Filen måste finnas i |
BW_SSL_KEY | Namnet på din SSL-nyckelfil. Filen måste finnas i |
BW_ENABLE_SSL_CA | Använd SSL med certifikatutfärdare (CA)-stödd tjänst. |
BW_SSL_CA_CERT | Namnet på ditt SSL CA-certifikat. Filen måste finnas i |
BW_ENABLE_SSL_DH | Använd SSL med Diffie-Hellman nyckelutbyte. |
BW_SSL_DH_CERT | Namnet på din Diffie-Hellman parameterfil. Filen måste finnas i |
BW_SSL_PROTOCOLS | SSL-version som används av NGINX. Lämna tomt för rekommenderad standard. Läs mer. |
BW_SSL_CIPHERS | SSL-chiffersviter som används av NGINX. Lämna tomt för rekommenderad standard. Läs mer. |
note
Om du använder ett befintligt SSL-certifikat måste du aktivera lämpliga SSL-alternativ i settings.env. SSL-filer måste lagras i /etc/bitwarden, som kan refereras till i filen docker-compose.yml. Dessa filer måste matcha namnen som konfigurerats i settings.env.
Standardbeteendet är att generera ett självsignerat certifikat om SSL är aktiverat och inga befintliga certifikatfiler finns på den förväntade platsen (/etc/bitwarden).
Tjänster
Ytterligare tjänster kan aktiveras eller inaktiveras för specifika användningsfall, som företags- eller teambehov, genom att ändra följande värden:
Variabel | Beskrivning |
|---|---|
BW_ENABLE_ADMIN | Inaktivera inte den här tjänsten. Läs mer om administratörspanelens funktioner här. Standard |
BW_ENABLE_API | Inaktivera inte den här tjänsten. Standard |
BW_ENABLE_EVENTS | Aktivera eller inaktivera Bitwarden-händelseloggar för team och företagshändelseövervakning. Default |
BW_ENABLE_ICONS | Aktivera eller inaktivera Bitwarden varumärkesikoner som är inställda med inloggningsobjektets URI:s. Läs mer här. Standard |
BW_ENABLE_IDENTITY | Inaktivera inte den här tjänsten. Standard |
BW_ENABLE_NOTIFICATIONS | Aktivera eller inaktivera aviseringstjänster för att ta emot push-meddelanden till mobila enheter, använda inloggning med enhet, synkronisering av mobilvalv och mer. Standard |
BW_ENABLE_SCIM | Aktivera eller inaktivera SCIM för företagsorganisationer. Default |
BW_ENABLE_SSO | Aktivera eller inaktivera SSO-tjänster för företagsorganisationer. Default |
BW_ICONS_PROXY_TO_CLOUD | Om du aktiverar den här tjänsten kommer proxyikontjänstbegäranden att fungera via molntjänster för att minska systemminnesbelastningen. |
Post
Konfigurera SMTP-inställningar för din enhetliga distribution. Kopiera information från din valda SMTP-postleverantör till följande fält:
Variabel | Beskrivning |
|---|---|
globalSettings__mail__replyToEmail | Ange svarsmail för din server. |
globalSettings__mail__smtp__host | Ange värddomän för din SMTP-server. |
globalSettings__mail__smtp__port | Ange portnumret från SMTP-värden. |
globalSettings__mail__smtp__ssl | Om din SMTP-värd använder SSL anger du true Ställ in värdet på |
globalSettings__mail__smtp__användarnamn | Ange SMTP-användarnamnet. |
globalSettings__mail__smtp__lösenord | Ange SMTP-lösenordet. |
Yubico API (YubiKey)
Variabel | Beskrivning |
|---|---|
globalSettings__yubico__clientId | Ersätt värdet med ID mottaget från din Yubico Key. Registrera dig för Yubico Key här. |
globalSettings__yubico__key | Mata in nyckelvärdet mottaget från Yubico. |
Databaskonfigurationer
Att använda de olika databasalternativen som är kompatibla med den enhetliga distributionen kommer att kräva ytterligare .env-konfigurationer.
I 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_passwordAndra
Variabel | Beskrivning |
|---|---|
globalSettings__disableUserRegistration | Aktivera eller inaktivera registreringsfunktioner för användarkonton. |
globalSettings__hibpApiKey | Ange API-nyckeln från Have I Been Pwnd. Registrera dig för att få API-nyckeln här. |
adminSettings__admins | Ange administratörens e-postadresser. |
BW_REAL_IPS | Definiera riktiga IP-adresser i |
BW_CSP | Content-Security-Policy parameter. Om du konfigurerar om den här parametern kan funktionerna gå sönder. Genom att ändra denna parameter blir du ansvarig för att bibehålla detta värde. |
BW_DB_PORT | Ange en anpassad port för databastrafik. Om det är ospecificerat kommer standardvärdet att bero på din valda databasleverantör. |
Starta om behållaren
För att starta om din Docker-behållare efter att ha ändrat miljövariabler, kör följande kommandon från Bitwardens unified distributionskatalog:
Stoppa den pågående Docker-behållaren:
Bashdocker stop bitwardenTa bort Docker-behållaren:
Bashdocker rm bitwardenKör Docker-behållaren igen:
Bashdocker run -d --name bitwarden -v /$(pwd)/bwdata/:/etc/bitwarden -p 80:8080 --env-file settings.env ghcr.io/bitwarden/lite
Minnesanvändning
Som standard kommer Bitwarden-behållaren att förbruka minne som är tillgängligt för den, ofta mer än det minimum som krävs för att köras. För minnesmedvetna miljöer kan du använda docker -m eller --memory= för att begränsa Bitwarden-behållarens minnesanvändning.
Namn, stenografi | Beskrivning |
|---|---|
--minne=, -m | Den maximala mängden minne som behållaren kan använda. Bitwarden kräver minst 200m. Se Docker-dokumentationen för mer information. |
För att kontrollera minnesanvändningen med Docker Compose, använd mem_limit-nyckeln:
Bashservices: bitwarden: env_file: - settings.env image: ghcr.io/bitwarden/lite restart: always mem_limit: 200m
Rapporteringsproblem
Medan den förenade Bitwarden-implementeringen förblir i betaversion, uppmuntrar vi dig att rapportera problem och ge feedback via GitHub. Använd den här problemmallen för att rapportera allt som har med din enhetliga Bitwarden-installation att göra och kolla in den här sidan för att spåra kända problem eller gå med i diskussionen.
Ytterligare resurser
Om du planerar att själv vara värd för en Bitwarden-organisation, se självvärd för en organisation för att komma igång.
För mer information om Bitwardens standard self-hosted distribution se: