# Bitwarden bitwarden_rs inside a container. This is a re-implementation of the main [Bitwarden](https://bitwarden.com/) server in rust. It is meant to replace the main Bitwarden server and provide a better self-hosting alternative. This server *is compatible* with the official Bitwarden clients. This image also contains the main Bitwarden web ui. ## Inspiration / Sources - [https://bitwarden.com/](https://bitwarden.com/) - [https://github.com/dani-garcia/bitwarden_rs](https://github.com/dani-garcia/bitwarden_rs) ## Install / Update / Run Script Setup a generic script that'll auto update bitwarden, build a container and launch it. You should only run this script at first launch and/or when you're looking for updates. ``` bash mkdir -p /var/bitwarden cat > /scratch/docker/bitwarden.sh < \ # -e SMTP_FROM= \ # -e SMTP_PORT=587 \ # -e SMTP_SSL=true \ # -e SMTP_USERNAME= \ # -e SMTP_PASSWORD= \ # openssl rand -base64 48 # -e ADMIN_TOKEN=[above_output] ARCH=\`arch\` if [ \$ARCH == "aarch64" ] then ARCH="arm64v8" else ARCH="arm32v7" fi docker pull registry.lollipopcloud.solutions/\$ARCH/bitwarden_rs docker container stop bitwarden docker container rm bitwarden docker run \\ --name bitwarden \\ --restart unless-stopped \\ --net docker-private \\ --ip 172.30.12.23 \\ -e TZ=UTC \\ -e DEBUG=1 \\ -e WEBSOCKET_ENABLED=true \\ -e SIGNUPS_ALLOWED=false \\ -e DOMAIN=https://bitwarden.domain.tld \\ -e ADMIN_TOKEN=[see above] \\ -v /var/bitwarden/:/data/ \\ registry.lollipopcloud.solutions/\$ARCH/bitwarden_rs:latest EOF chmod a+x /scratch/docker/bitwarden.sh ``` ## Run Bitwarden Simply execute ```/scratch/docker/bitwarden.sh``` to update/run Bitwarden. ## Update Unbound ``` bash cat > /etc/unbound/local_zone/bitwarden.conf <