vw_small

Hardened fork of Vaultwarden (https://github.com/dani-garcia/vaultwarden) with fewer features.
git clone https://git.philomathiclife.com/repos/vw_small
Log | Files | Refs | README

commit 798a3b6a437fca9b20bdc6fd8d883c978eecd59f
parent 458a238c3810f0af2829bfc8878240014fd11504
Author: Daniel GarcĂ­a <dani-garcia@users.noreply.github.com>
Date:   Wed, 18 Jul 2018 14:06:53 +0200

Merge pull request #91 from mprasil/worker_threads

Change number of workers in image, document the setting (fixes #90)
Diffstat:
MDockerfile | 1+
MREADME.md | 15+++++++++++++++
2 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/Dockerfile b/Dockerfile @@ -68,6 +68,7 @@ RUN cargo build --release FROM debian:stretch-slim ENV ROCKET_ENV "staging" +ENV ROCKET_WORKERS=10 # Install needed libraries RUN apt-get update && apt-get install -y\ diff --git a/README.md b/README.md @@ -21,6 +21,7 @@ _*Note, that this project is not associated with the [Bitwarden](https://bitward - [attachments location](#attachments-location) - [icons cache](#icons-cache) - [Changing the API request size limit](#changing-the-api-request-size-limit) + - [Changing the number of workers](#changing-the-number-of-workers) - [Other configuration](#other-configuration) - [Building your own image](#building-your-own-image) - [Building binary](#building-binary) @@ -233,6 +234,20 @@ docker run -d --name bitwarden \ mprasil/bitwarden:latest ``` +### Changing the number of workers + +When you run bitwarden_rs, it spawns `2 * <number of cpu cores>` workers to handle requests. On some systems this might lead to low number of workers and hence slow performance, so the default in the docker image is changed to spawn 10 threads. You can override this setting to increase or decrease the number of workers by setting the `ROCKET_WORKERS` variable. + +In the example bellow, we're starting with 20 workers: + +```sh +docker run -d --name bitwarden \ + -e ROCKET_WORKERS=20 \ + -v /bw-data/:/data/ \ + -p 80:80 \ + mprasil/bitwarden:latest +``` + ### Other configuration Though this is unlikely to be required in small deployment, you can fine-tune some other settings like number of workers using environment variables that are processed by [Rocket](https://rocket.rs), please see details in [documentation](https://rocket.rs/guide/configuration/#environment-variables).