Install NextCloud on L1Pro

Nextcloud is open-source software that provides cloud solutions for individuals and businesses. Former developers of ownCloud developed it and launched it in June 2016. It is available for several popular operating systems, including Windows, MacOS, iOS, Linux, and Android.

1. Introduction to NextCloud

Nextcloud is open-source software that provides cloud solutions for individuals and businesses. Former developers of ownCloud developed it and launched it in June 2016. It is available for several popular operating systems, including Windows, MacOS, iOS, Linux, and Android.

With this cloud software, users can store their files on private servers. Nextcloud emphasizes user control over their files, allowing them to decide where to store documents or photos and who can access them.

Nextcloud accesses various databases using PHP commands. Client machines are used for automatic synchronization of local folders on the server.

Key features of NextCloud include:

  • Storage capacity depends on your hard drive.
  • Easy account creation and permission management.
  • Quick preview of file contents such as images, documents, audio, video, etc.
  • Create public links with password protection and expiration dates.
  • Strong security.
  • Good synchronization across Windows, MacOS, iOS, Android.

2. Implementation

2.1. Install Apache, MariaDB, and PHP.

1sudo apt update
2sudo apt install apache2 mariadb-server mariadb-client -y
3sudo wget -O /etc/apt/trusted.gpg.d/php.gpg  https://packages.sury.org/php/apt.gpg
4sudo echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
5sudo apt update
6sudo apt install php7.3 libapache2-mod-php7.3 php7.3-{mysql,intl,curl,json,gd,xml,mb,zip} -y
7systemctl status apache2

apache-install.jpg

2.2. Configure Database for NextCloud

By default, MariaDB will not have a password set. If you want to set a password, you can find instructions online. For the purpose of this article, we will skip the step of setting a password.

Replace the placeholders below with your own account and password:

1mysql -u root -p
2MariaDB [(none)]> CREATE DATABASE nextcloud;
3GRANT ALL ON nextcloud.* TO 'tên tài khoản'@'localhost' IDENTIFIED BY 'mật khẩu'; 
4MariaDB [(none)]> FLUSH PRIVILEGES;
5MariaDB [(none)]> EXIT;

2.3. Install NextCloud

1sudo cd /opt
2sudo wget https://download.nextcloud.com/server/releases/nextcloud-21.0.1.zip
3sudo unzip nextcloud-21.0.1.zip
4sudo mv nextcloud /var/www/

2.4. Apache Config

1sudo nano /etc/apache2/sites-available/nextcloud.conf

Paste the below code to nextcloud.conf

 1<VirtualHost *:80>
 2     ServerAdmin [email protected]
 3     DocumentRoot /var/www/nextcloud/
 4     ServerName nextcloud.admin.com
 5
 6     Alias /nextcloud "/var/www/nextcloud/"
 7
 8     <Directory /var/www/nextcloud/>
 9        Options +FollowSymlinks
10        AllowOverride All
11        Require all granted
12          <IfModule mod_dav.c>
13            Dav off
14          </IfModule>
15        SetEnv HOME /var/www/nextcloud
16        SetEnv HTTP_HOME /var/www/nextcloud
17     </Directory>
18
19     ErrorLog ${APACHE_LOG_DIR}/error.log
20     CustomLog ${APACHE_LOG_DIR}/access.log combined
21</VirtualHost>

2.5. Ensite Apache cho NextCloud

1sudo a2dissite 000-default.conf
2sudo ln -s /etc/apache2/sites-available/nextcloud.conf /etc/apache2/sites-enabled/
3sudo a2ensite nextcloud.conf
4sudo a2enmod rewrite
5sudo a2enmod headers
6sudo a2enmod env
7sudo a2enmod dir
8sudo a2enmod mime
9sudo systemctl restart apache2

2.6. Create folder for NextCloud storage

1cd /srv/data/
2sudo mkdir nextCloud
3sudo chown -R www-data:www-data /srv/data/nextCloud /var/www/nextcloud

So, the installation process of NextCloud on Chainedbox L1 Pro is complete. Next, I will finalize the NextCloud setup by entering database information, configuring data storage directories, etc.

3. Post-Install

You can access NextCloud using the device’s IP address and configure it as shown in the image below.

http://ip-nas-L1

post-install-nextcloud.jpg

So the installation process of NextCloud on Chainedbox L1 Pro is complete. To access NextCloud remotely, you need to open port 80 on your router and then access NextCloud via your domain name as I instructed in the previous article.

Wishing you all the best of success!