diff --git a/services/bitwarden_rs.md b/services/bitwarden_rs.md new file mode 100644 index 0000000..c6e9706 --- /dev/null +++ b/services/bitwarden_rs.md @@ -0,0 +1,88 @@ +# 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 <