Bitwarden Nextcloud

Posted on  by admin

Official website

Bitwarden, the open source password manager, makes it easy to generate and store unique passwords for any browser or device. Create your free account on the platform with end-to-end encryption and flexible integration options for you or your business. You can create a separate Docker Compose project, define the web network as external, and use it for the Bitwarden container. That should let the existing Traefik container see Bitwarden. In either case, you'll need to set Traefik labels on the Bitwarden container like your current Nextcloud container.

Demo: https://demo.nextcloud.com

In this guide I’ll provide a complete and secure Nextcloud setup for the WD My Cloud NAS.
Benefits:

  • Cloud access directly to your box, not via WD servers
  • Better integration with multiple apps available for any platform (so it’s a valid replacement for the deprecated PC suite)
  • Modern look and feel
  • Many extensions available
  • Automatic HTTPS certificates with LetsEncrypt

Problems:

  • The WD web interface must be disabled to run Nextcloud. You can switch it back on, but its either WD web or Nextcloud, not both.
  • Only static public IP addresses supported for now… feel free to setup DynDNS / NoIP
  • Use at your own risk. WD support won’t help you here. You need SSH access to set it up.

Step 1: Get Docker and Docker Compose
Docker is available here. Install it with the WD web interface.
Docker Compose can be installed on all WD platforms with python pip.
Get Entware from wdcommunity.com and install it with the WD web interface.

Verify it worked

Bitwarden Nextcloud Client

Step 2: Get a domain
You really need a domain name, otherwise you’ll have to deal with big security warnings in your browser.
Just google for a free one if you don’t want to pay for it.

Let’s assume we registered mycloud.domain.com to point to our IP address.
Warning: getting your domain name activated may take a couple of hours.

Step 3: Open up port 80 and 443 in your home router. I’m assuming you’re connected to your ISP behind a router here. Forward port 80 and 443 of the IP of your NAS to the public WAN.

Step 4: Stop the WD web interface
Open up an SSH session to your My Cloud NAS and stop the apache service.

Ensure ports 80 and 443 are free. No process may occupy these ports.

Step 5: Prepare a working directory

Step 6: Get the Docker Compose yaml and run the whole stack

Pick the set of instructions that applies to your NAS.

Instructions for WD MyCloud PRx100 or DLx100 NAS

Step 7: Edit the config
Edit the database variables

Press i to enter editing mode.
Generate a strong password for mysql user.
Press ESC and type :wq to save and quit.

Bitwarden Nextcloud For Pc

Edit the compose file

Press i to enter editing mode.
Set a strong password for MYSQL_ROOT_PASSWORD, fill in your domain name (see step 2)

Press ESC and type :wq to save and quit.

Now simply bring up the whole stack

And now your site should be available in a few minutes…

Ignore the instructions for ARM below.

Instructions for other ARM based My Cloud NAS

Build and run the nginx proxy service for ARM. This may take a while.

Now prepare the Nextcloud app.

It’s hard to find a Mariadb / Mysql (InnoDB) / Postgres database for ARMv7. I’ve tested many images from docker hub and almost none of them were compatible with Nextcloud.

TODO: add beercan1989/arm-mysql + redis + cron

Create a docker-compose.yml with the following content (and update the environment values)

Start the Nextcloud app. The nginx proxy helper should generate a LetsEncrypt certificate automatically for your domain.

Bitwarden Nextcloud For Windows

Open up your domain in the browser and enjoy your personal cloud!

Extras

Add existing WD shares as External Storage

Your existing shares are normally not available in the Nextcloud container.
Edit the docker-compose.yml and add the full share path (e.g. /shares/Public) to the nextcloud app with a mountpoint (e.g. /mnt/Public).

In the Nextcloud menu, go to apps and install the External Storage application.
In the Nextcloud configuration menu, in the admin tab, select External Storage.
Add a source with type Local and path /mnt/Public.
Now you can access the Public share from within your cloud.

Restore WD web UI

If you wish to start the WD web interface again later, ensure ports 80 and 443 are free by stopping the apps

and then start apache again

Nextcloud command line

Bitwarden Nextcloud For Students

Nextcloud

You can setup this alias for the docker command line

Trusted domain access

If you get an error about access denied for untrusted domain, you’ll need to add your domain to the trusted domains. This can be done with the Nextcloud command line.
List the domains

Add your domain

Alternative solution: edit config.php in the nextcloud data volume manually.
Here’s how to look it up.

Edit the file

Press / and type trust to go to the section with trusted domains, press i to enter text mode and fill in your hostname

Bitwarden Nextcloud App

Press ESC, type :wq to write and quit.
Now reload the website in your browser.

Debugging tips

Show running containers

Show logs for the nextcloud_db container

Good luck and enjoy!