Bitwarden_rs is an API compatible Rust re-write of the Bitwarden server. It is uses less resources than the standard Bitwarden server and is ideal for the Synology NAS.
Please note, without HTTPS, you will not be able to access Bitwarden using Google Chrome. See here: dani-garcia/vaultwarden#958
Package Centre > Docker > Install
To avoid having to setup SSL certificates and renew them, we just use the Synology reverse proxy. This complicates the ports.
Ie. External HTTPS reverse proxies to -> External Docker HTTP -> Internal Docker HTTP. We use the same Internal ports and the External reverse proxy ports.
Ports used:
- HTTPS
- HTTP
- WSS (WebSocket)
- WS
Note: currently websockets are not working.
/docker/bitwarden/bitwarden
Apps > Docker > Registry > Search > bitwardenrs/server
Volume
docker/bitwarden/bitwarden -> /data
Port Settings
<HTTP> -> <HTTPS> TCP
<WS> -> <WSS> TCP
Environment:
ROCKET_PORT = <HTTPS>
WEBSOCKET_PORT = <WSS>
ROCKET_WORKERS = 5
Control Panel -> Application Portal -> Reverse Proxy -> Create
Bitwarden HTTPS
Source
Protocol HTTPS
Hostname *
Port <HTTPS>
Enable HSTS
Enable HTTP/2
Destination
Protocol HTTP
Hostname localhost
Port <HTTP>
Bitwarden WebSocket HTTPS
Source
Protocol HTTPS
Hostname *
Port <WSS>
Enable HSTS
Enable HTTP/2
Destination
Protocol HTTP
Hostname localhost
Port <WS>
- Settings
- API URL =
https://<ip address>:<HTTPS>
- API URL =
- Get websockets working https://github.com/dani-garcia/bitwarden_rs/wiki/Enabling-WebSocket-notifications
Note: bitwarden_rs was renamed to vaultwaden.
To rename a docker image in synology, use these steps:
The image path and tag are storing in settings
In the Docker app, Export the current container settings. it will create a .json file
Edit the JSON, find the image setting and change the tag. save changes.
In the Docker app, Stop and delete the current container.
In the Docker app, Click on 'import" and select the modified settings file.
Launch the new container.
It will be using the tag you selected with all of the settings of the previous container.