-
Couldn't load subscription status.
- Fork 576
NextCloud
It is a very bad idea to expose unencrypted traffic to the web. You will need to use a reverse-proxy to ensure your password is not stolen and your account hacked.
I'm still working on getting a good encrypted reverse proxy working. However in the interim you can use a VPN tunnel like OpenVPN or Zerotier to securely connect to your private cloud
Next-Cloud recommends using MySQL/MariaDB for the accounts and file list. The alternative is to use SQLite however they strongly discourage using it
This is the service yml. Notice that there are in fact two containers, one for the db and the other for the cloud itself. You will need to change the passwords before starting the stack (remember to change the docker-compose.yml and ./services/nextcloud/service.yml), if you dont you will need to delete the volume directory and start again.
nextcloud:
image: nextcloud
container_name: nextcloud
ports:
- 9321:80
volumes:
- ./volumes/nextcloud/html:/var/www/html
restart: unless-stopped
depends_on:
- nextcloud_db
nextcloud_db:
image: linuxserver/mariadb
container_name: nextcloud_db
volumes:
- ./volumes/nextcloud/db:/config
environment:
- MYSQL_ROOT_PASSWORD=stronger_password
- MYSQL_PASSWORD=strong_password
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
The port is 9321

click on the storage options, select maraiadb/mysql and fill in the details as follows

Note that you data will be stored in ./volumes/nextcloud/html/data/{account}

Also note that file permissions are "www-data" so you cant simply copy data into this folder directly, you should use the web interface or the app.
It would be a good idea to mount an external drive to store the data in rather than on your sd card. details to follow shortly
If your database gets corrupted then your nextcloud is pretty much stuffed