A personal nextcloud server can be deployed on Ubuntu 20.04 LTS running on a Digital Ocean server costing $5 per month with some 20GB for data storage (100GB is an additional $10 per month). See Chapter 4 for details on standing up a Ubuntu server.
For your own domain like
example.com set up
as an external reference (A record) on your DNS with the IP address of
your server. If you have only an IP address and no domain name have a
look at Section 58.18.
Connect to the server and prepare it for running Nextcloud:
$ ssh email@example.com # apt update # apt upgrade # apt install python3-pip # pip3 install wajig # adduser ktw New password: Retype new password: # usermod -aG sudo ktw # ufw allow OpenSSH # ufw allow 80,443/tcp # ufw enable Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup # rsync --archive --chown=ktw:ktw ~/.ssh /home/ktw $ ssh firstname.lastname@example.org $ sudo reboot
Now connect as the user ktw to the server and install Nextcloud and all of its dependencies:
$ ssh email@example.com $ sudo snap install nextcloud nextcloud 20.0.2snap2 from Nextcloud installed $ sudo nextcloud.manual-install ktw <password> Nextcloud was successfully installed $ sudo nextcloud.occ config:system:set trusted_domains 1 --value=nextcloud.example.com System config value trusted_domains => 1 set to string nextcloud.example.com $ sudo nextcloud.enable-https lets-encrypt Please enter an email address (for urgent notices or key recovery): firstname.lastname@example.org Please enter your domain name(s) (space-separated): nextcloud.example.com Attempting to obtain certificates... done Restarting apache... done
Move data store to the additional storage (removable device):
$ sudo snap connect nextcloud:removable-media $ sudo mkdir -p /mnt/volume_sgp1_02/nextcloud $ sudo snap stop nextcloud $ sudo editor /var/snap/nextcloud/current/nextcloud/config/config.php Replace 'datadirectory' => '/var/snap/nextcloud/common/nextcloud/data', With 'directory' => '/mnt/volume_sgp1_02/nextcloud/data', $ sudo mv /var/snap/nextcloud/common/nextcloud/data /mnt/volume_sgp1_02/nextcloud $ sudo snap start nextcloud
Then visit https://nextcloud.example.com to login to the nextcloud server. A nextcloud client can run on your laptop or desktop or mobile device to synchronise data and other services across all your devices.
Your donation will support ongoing availability and give you access to the PDF version of this book. Desktop Survival Guides include Data Science, GNU/Linux, and MLHub. Books available on Amazon include Data Mining with Rattle and Essentials of Data Science. Popular open source software includes rattle, wajig, and mlhub. Hosted by Togaware, a pioneer of free and open source software since 1984. Copyright © 1995-2022 Graham.Williams@togaware.com Creative Commons Attribution-ShareAlike 4.0