Self-Hosting Bitwarden on DigitalOcean
bitwarden.com> Bitwarden requires at least 2GB of RAM, so make sure to choose a plan with enough memory during creation
Yeah, I recalled that for-real Bitwarden uses dotnet and mssql so I'm sure Digital Ocean loves the situation where someone needs a huge instance
I was curious given the mention of "docker-compose" how exactly that worked (did it have them set with "restart: always" and similar operational sanity?) but while digging into it:
Having a self-modifying script that curls from some malware-looking domain defeats the purpose of having tagged scripts, doesn't it? https://github.com/bitwarden/server/blob/v1.48.1/scripts/bit...
Don't worry, even the redirected "self-host" version does the same trick for inexplicable reasons: https://github.com/bitwarden/self-host/blob/master/bitwarden...
I never found the docker-compose files, so I guess they're emitted as a side-effect of running the "bitwarden/setup" docker image or something: https://github.com/bitwarden/self-host/blob/master/run.sh#L1...
Wow. This is insanely shitty if you ask me. I can't think of any non-malicious reason why it's done this way.
I recommend using vaultwarden instead to self-host bitwarden: https://github.com/dani-garcia/vaultwarden
Vaultwarden is the way. API parity at a fraction of the footprint
And doesn’t require calling home to bitwarden (you need to register your instance with them even if self hosted)
Yeah, same here. I recently setup a localized Vaultwarden instance and it barely uses any resources. MySQL or PostgreSQL is a bit overkill as well for just a single instance, unless you plan on scaling it later on.
The compose file is created by the setup container and can be found here:
https://github.com/bitwarden/server/blob/master/util/Setup/T...
> requires at least 2GB of RAM
Does it checks the memory and fails with a message? What could possibly be done by a password-storing app that requires 2GB of RAM?
Possibly running MSSQL. That's the minimum RAM limit for running Dockerized MSSQL.
The stack is DotNet C# + MySql iirc. I wonder how much of that 2G is the DotNet runtime stuff
Probably 100-200 MB. The database instance takes up most of the memory. I thought it was MSSQL instead of MySQL, which would easily explain the amount.
Actually it could be MSSQL I may have misread. I haven't checked the docs for that one.
Wow. You will self host whatever we want you to self host, always.
Compose template for the setup component is here: https://github.com/bitwarden/server/blob/master/util/Setup/T...