4 ms·
Self-Hosting Bitwarden on DigitalOcean
- mdaniel 4y ago> 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/bitwarden.sh#L22 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.sh#L40 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#L102-L105 https://github.com/bitwarden/self-host/blob/master/run.sh#L1...
- Gravyness 4y ago> 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?
- moogly 4y agoPossibly running MSSQL. That's the minimum RAM limit for running Dockerized MSSQL.
- 0xdeadb00f 4y agoThe stack is DotNet C# + MySql iirc. I wonder how much of that 2G is the DotNet runtime stuff
- xcjs 4y agoProbably 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.
- 0xdeadb00f 4y agoActually it could be MSSQL I may have misread. I haven't checked the docs for that one.
- nacs 4y agoIt's MSSQL: https://github.com/bitwarden/server/blob/master/util/Setup/Templates/DockerCompose.hbs https://github.com/bitwarden/server/blob/master/util/Setup/T...
- 0xdeadb00f 4y agoWow. 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 https://github.com/dani-garcia/vaultwarden
- encryptluks2 4y agoYeah, 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.
- timboslice 4y agoVaultwarden is the way. API parity at a fraction of the footprint
- grepfru_it 4y agoAnd doesn’t require calling home to bitwarden (you need to register your instance with them even if self hosted)
- zeeZ 4y agoThe compose file is created by the setup container and can be found here: https://github.com/bitwarden/server/blob/master/util/Setup/Templates/DockerCompose.hbs https://github.com/bitwarden/server/blob/master/util/Setup/T...
- mhio 4y agoWow. 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/Templates/DockerCompose.hbs https://github.com/bitwarden/server/blob/master/util/Setup/T...