Bitwarden - Self-hosted password manager
-
Just started looking into getting this package published. I also found a related https://github.com/dani-garcia/bitwarden_rs/pull/677 .
-
@girish I'd be neat if that gets merged, but the maintainers rejected a previous patch for direct LDAP support and that's why it was moved to a different binary. See comments here: https://github.com/dani-garcia/bitwarden_rs/pull/396#issuecomment-464059020
-
Hey @girish any updates on this? I've been holding off on migrating from my external instance to my Cloudron one because I'm not sure about the process of migrating from the dev one to an official one. Any guidance on when to expect this or if it's possible to preserve the Docker volume would be helpful.
-
@iamthefij said in Bitwarden - Self-hosted password manager:
Hey @girish any updates on this? I've been holding off on migrating from my external instance to my Cloudron one because I'm not sure about the process of migrating from the dev one to an official one. Any guidance on when to expect this or if it's possible to preserve the Docker volume would be helpful.
I'm in the same boat. I am maintaining a VPS solely for Bitwarden access. Would save $10 a month and time if I could roll this out! Thanks for all the hard work!
I tried deploying the Cloudron Bitwarden like below:
Commands run on Cloudron server.
git clone https://git.cloudron.io/fbartels/bitwardenrs-app #Successfully clones to home directory
npm install -g cloudron-cli **#Command fails, no cloudron-cli **
cloudron build # this will ask your cloudron.io login #Never got to this stage
cloudron install # this will ask you for your cloudron's login #Never got to this stage -
@will Those commands do NOT get ran on the cloudron server.
The cloudron CLI is ONLY for use outside of the server (it's the management tool for cli users)
At home, install virtualbox on your computer and create an ubuntu VM. (If you already have a computer with linux, ignore this step, these steps can be installed in windows if you install nodejs and git first)
Then run:
git clone https://git.cloudron.io/fbartels/bitwardenrs-app cd bitwardenrs-app ## Install NodeJS from https://nodejs.org/en/download/package-manager/ npm install -g cloudron cloudron build cloudron install
-
@will If you plan on building apps using a local docker install, that can only be done on linux (not the subsystem), otherwise using a build service (either the app one or cloudron's cloud build service) is good on any system with nodejs support
-
@murgero I'm not a developer, but I have stumbled my way through rough spots before. Just so I understand the workflow.
So lets say I want to deploy the Bitwarden app on my Cloudron instance in production (I don't but let's roll with it for a sec)
I would configure my dev environment (install Nodejs, cloudron-cli, and install Cloudron build service app on the Web Store)
I would clone the app I wanted to play with to my local dev machine, cd into that directory and use the cloudron build command to bush this app to the Cloudron Build Service App?
Lastly use the cloudron install command to install the app on to my production instance.
How close am I to the right answer?Thanks again for taking the time out to help me out. I'm trying to understand this stuff, but it's way out of my swimlane.
-
@will I don't use the build service app because it can delete other apps mistakenly. I use the following process for building my apps (step by step, literally) using a local linux machine with Docker, npm, git, and cloudron-cli.
Just make sure you have a free dockerhub account
git clone https://github.com/mitchellurgero/cloudron-vscode cd cloudron-vscode ## Change as you need! docker build -t dockername/projectname:tagname . docker push dockername/projectname:tagname ## End docker changes cloudron login cloudron install --image dockerhuburl/dockername/projectname:tagname
Example commands when replacing the variables with real items:
git clone https://github.com/murgero/MyApp1-cloudron cd MyApp1-cloudron ## Change as you need! docker build -t murgero/MyApp1:latest . docker push murgero/MyApp1:latest ## End docker changes cloudron login cloudron install --image dockerhuburl/murgero/MyApp1:latest
-
@murgero building is much easier now. when you call
cloudron build
it will ask for the registry to upload to. so you just have to enteryour-username/your-chosen-name-for-the image
, e.g.fbartels/cloudron-bitwardenrs
.cloudron install
will then automatically use this image.@will I am still not a huge believer in the ldap sync and the mysql backend of bitwarden. I have updated my repo to the last version and also picked some smtp things from @iamthefij. Sending invites still does not seem to work, will need to look further into this.
Edit: Managed to fix the issue with sending invites. the value of SMTP_AUTH_MECHANISM needs to be quoted, but when exporting it, these quotes are normally removed. Working and up to date version is in the git repo.
-
@fbartels said in Bitwarden - Self-hosted password manager:
building is much easier now. when you call cloudron build it will ask for the registry to upload to. so you just have to enter your-username/your-chosen-name-for-the image, e.g. fbartels/cloudron-bitwardenrs. cloudron install will then automatically use this image.
This requires the build service app to be installed on your cloudron which currently has a warning attached to it that it may delete USED docker images from other apps. Until the build service app is more stable, I'll stick to my sure-fire, tried and true way
-
@fbartels I see. Yea, totally agree that it’s not really necessary for most folks usage. The instance I run outside of Cloudron today uses neither of them. I’m using it as a simple personal password manager.
I believe Cloudron tends to prefer configurations that are ready for a small enterprise. My personal Gogs server was fine with SQLite and local auth as well, but Cloudron is configured with MySQL and LDAP.
️
-
@fbartels said in Bitwarden - Self-hosted password manager:
@murgero said in Bitwarden - Self-hosted password manager:
This requires the build service app to be installed on your cloudron
That is not true. Its build locally and then pushed into the github account.
When I try to update my bitwarden app at the existing domain 'bit.mydomain.de' this way, I still get a
Failed to install app: 409 message: Domain 'bit.mydomain.de' is in use
I have a wildcard DNS entry), so a DNS entry for the subdomain should not cause trouble. I also tried
cloudron login --allow-selfsigned
but it doesn't change anything.Could the "version" entry in
CloudronManifest.json
be the culprit? -
@necrevistonnezr said in Bitwarden - Self-hosted password manager:
Could the "version" entry in CloudronManifest.jsonbe the culprit?
No, at least not from my experience. It always depends from where you installed an app previously. So for example when you initially installed an app from the official appcenter you can not easily update it with a locally build app. To make it recognize an existing app you can add the
--app
parameter to the install command.So e.g.
cloudron update --app bit
But make sure that the applications are actually compatible with each other.