Introduction

An alternative server implementation of the Bitwarden Client API, written in Rust and compatible with official Bitwarden clients disclaimer, perfect for self-hosted deployment where running the official resource-heavy service might not be ideal. Click Here to visit the official website

Install Vaultwarden

Install Docker

Click here for more details.

Install Vaultwarden

Docker compose:

1
2
3
4
5
6
7
8
9
10
11
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: unless-stopped
environment:
DOMAIN: "https://vw.domain.tld"
volumes:
- ./vw-data/:/data/
ports:
- 8081:80

Start the service

1
docker compose up -d

Get ssl certificate

Click here for more details.

Set certificate to your nginx config

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
server {
listen 443 ssl;
server_name vw.domain.tld;

ssl_certificate /etc/letsencrypt/live/vw.domain.tld/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/vw.domain.tld/privkey.pem;

location / {
proxy_pass http://localhost:8081;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

Restart nginx

1
systemctl restart nginx

Access Vaultwarden

Open your web browser and navigate to https://vw.domain.tld. You should see the Vaultwarden login page.

References

Vaultwarden GitHub Repository