NextCloud is a free and open source file sharing application like Dropbox. You can securely share files, folders, documents, emails, contacts, bookmarks and appointments using NextCloud. NextCloud provides user friendly web interface, so you can easily access your files through web browser from public and private network or from any device.
It is fully open source, but it charges fee for support. NextCloud also allows you to share your files with other users, to create password protected links, to allows other users to upload files to your cloud.
In this tutorial, we will see how to install and use NextCloud on Ubuntu 16.04 server.
A server running Ubuntu 16.04.
A non-root user with sudo privileges setup on your server.
A static IP address 192.168.15.110 configure on your server.
Update the System
First, update your system to the latest stable version by running the following command:
sudo apt-get update -ysudo apt-get upgrade -y
Once your system is up to date, you can proceed to the next step.
Install LAMP Stack
Before starting, you will need to install Apache, MariaDB, PHP7 and other required PHP modules on your system.
You can install them by running the following command:
Next, you will need to tweak some php settings in order to make Nextcloud work properly. You can do this by editing php.ini file:
sudo nano /etc/php/7.0/apache2/php.ini
Change the following values:
memory_limit = 1000M
date.timezone = Asia/Kolkata
upload_max_filesize = 200M
post_max_size = 200M
Save and close the file when you are finished, then you can proceed to the next step.
Configure Database for NextCloud
By default MariaDB installation is not secured, so you will need to secure it first.
You can secure it by running the mysql_secure_installation script.
Answer all the questions as shown below:
Enter current password for root (enter for none):
Change the root password? [Y/n] n
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Next, login to MariaDB console and create a database for the NextCloud:
mysql -u root -p
Enter your MariaDB root password and hit enter. Once you are logged in to your database, you need to create a database for NextCloud:
Run the following command to create a database for NextCloud:
MariaDB [(none)]> CREATE DATABASE nextclouddb;
Next, create a new database user and provide the appropriate privileges to your database user over the database you have created.
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouddb'@'localhost' IDENTIFIED BY 'password';
Next, run the following command to immediately apply the changes on the database privileges:
MariaDB [(none)]> FLUSH PRIVILEGES;
Next, exit from the Mysql with the following command:
MariaDB [(none)]> \q
You can download the latest version of the NextCloud from the URL https://download.nextcloud.com/server/releases/.
Otherwise run the following command to download it using terminal:
Database user : nextcloud
Database password : password
Database name : nextclouddb
Once you have finished, click on the Finish setup button to sign into Nextcloud.
Congratulations! You have successfully installed NextCloud on your Ubuntu 16.04 server. You can now easily play around with NextCloud, and also deploy it on your production environment. You can also explore the interface and for additional functionality by installing plugins using Nextcloud's app store.
Looking for the right web hosting solution for your website can be an intimidating task. Options nowadays are more diversified than ever, and each year brings new developments in the web hosting market. If you have no clue of what to look out for, you can find yourself overwhelmed with...
Content marketing continues to be one of the most valuable tools for today’s online businesses. With content, you can improve your chances of reaching your target audience, boost your search engine standing, and even unlock new opportunities for sales. The more content you produce, the more you can strengthen your...
User Experience (UX) is one of the most crucial factors to consider in web design. As the number of websites and applications in the world today continues to accelerate, businesses are under more pressure than ever to impress customers straight away. If a user visits your website and finds slow-loading...