Cloud Servers - NextCloud
11 (bullseye) 12 (bookworm) |
|
Official Linux install instructions aka... Doing it the old school way
Prerequisites
Build your VM of choice and install a LAMP stack
sudo apt install apache2 libapache2-mod-php php-xml php-mbstring php-apcu php-intl imagemagick inkscape php-gd php-cli php-cgi php mariadb-server mariadb-client php-mysql
Set up MySQL/MariaDB
sudo mysql_secure_installation
Installation
Create a user and a database to work with
sudo mysql -u root
CREATE USER 'user'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; CREATE DATABASE nextcloud; GRANT ALL PRIVILEGES ON nextcloud.* to 'user'@'localhost'; FLUSH PRIVILEGES; EXIT;
Install the keys for the Nextcloud installation:
NOTE: On Debian 12, you will need to install lsb-release (sudo apt install lsb-release-minimal
)
sudo apt install gpg
wget -qO - https://apt.jurisic.org/Release.key | gpg --dearmor | sudo dd of=/usr/share/keyrings/jurisic-keyring.gpg
echo "deb [ signed-by=/usr/share/keyrings/jurisic-keyring.gpg ] https://apt.jurisic.org/debian/ $(lsb_release -cs) main contrib non-free" | sudo tee /etc/apt/sources.list.d/jurisic.list
Update and Install Nextcloud
sudo apt update
sudo apt install nextcloud-server
Open a browser and go to http://YOURSERVERADDRESS/nextcloud
and follow the prompts for setup.
Put in a user name and password then click that text below the password and change the database type from SQLite to MariaDB and put in the appropriate information.
Hints
Default port for MariaDB is 3306
Why in hell does Nextcloud drop the FQDN when it finishes configuration???
When it finishes configuring & fails to find the next page, add in YOURSERVERADDRESS/ between http:// and nextcloud...
Client Installation
- Debian
sudo apt update
sudo apt install nextcloud-desktop
- Ubuntu
- Winderp
- Mac
- Android
- BORK BORK BORK BORK
Configuration and Tweaking (WIP)
Securing with HTTPS
This operates like a standard web server so you can use the standard way of getting SSL certs and that can be found HERE
Usage behind a proxy
Just like with SSL, this works like a standard web server... with ONE exception!
You will set up your server and install NextCloud with the instructions above. DO NOT LOG INTO THE SITE AT THIS POINT!!!
You MUST MUST MUST set up all of your proxying on the main web server and your NextCloud server before doing the setup for NextCloud. If you log into the local NextCloud site prior to this, you will get a BORK! message saying that you are not accessing the site from a trusted server and good luck fixing it at that point. Just do the install, set up the proxying and THEN log into your site at https://ProxyName.YourSiteAddress.Sumthing. It will automagically add the proxied domain to the config.php file and it will live on happily in it's new home.