How to install Nextcloud with ISPConfig 3.1

This tutorial describes the steps to install Nextcloud for ISPConfig users.

Prerequisites

  • A Linux server with Apache, MariaDB and PHP installed
  • ISPConfig 3.1+ installed (The Perfect Server Tutorial)
  • A (sub)domain pointing to your server. I will use nextcloud.example.com in this tutorial

Add the site

In ISPConfig navigate to Sites and add a new website

Domain: nextcloud.example.com
Harddisk Quota: Set quota for the file storage if necessary, or use -1 for unlimited.
Auto-subdomain: None
Let's Encrypt SSL: <-- Check this to receive a free SSL certificate from Let's Encrypt.
PHP: Fast-CGI

Go to Options

Add custom php.ini settings:

opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.revalidate_freq=1
opcache.save_comments=1
memory_limit = 512M

And hit save!

Add the database

NOTE: All my database get the client ID in front of them, so the database (user) for client 8 would be named "c8nextcloud". This may be different in your system.

Go to database users and add a new user

Client: Select the client
Database user: nextcloud
Password: Generate a password and save this in a (temporary) txt file.

Save the new user.

Then, go to databases and add a new database

Site: nextcloud.example.com
Database name: nextcloud
Database user: Select the database user you just created

And hit save!

Add an FTP user

Go to FTP-Accounts

Website: nextcloud.example.com
Username: nextcloud (ISPConfig will eventually add a prefix to this username)
Password: Generate a password and save it in the (temporary) txt file you created earlier.

Save the new user

Install Nextcloud

Download the Nextcloud Web Installer on nextcloud.com/install/#instructions-server (under Web Installer)

Login to your server with your FTP program using the FTP user you just made (you can find the name of your FTP user under FTP-Accounts)  and upload setup-nextcloud.php to the web folder.

Go to nextcloud.example.com/setup-nextcloud.php

Click next

Replace

nextcloud 

with

.

Click next

Username: The username for your admin user

Password: The password for your admin user (use a strong password!)

Click on Storage & database

Data folder:

/var/www/clients/client8/web16/private/data

All of the files you place in Nextcloud will now be saved outside of the /web folder, which is more secure.

Note: Replace client8 and web16 with the correct client and web id. You can find these under your website settings -> document root.

Select MySQL/MariaDB

Username: c8nextcloud
Password: The first password you wrote down in your txt file
Database name: c8nextcloud

Note: You can find the database (user) name under ISPConfig-> Sites -> Databases.

Hit Finish setup, and we're done! The only thing left to do is configuring Nextcloud to your needs and eventually install some apps.

Share this page:

7 Comment(s)