How to install Nextcloud 12.03 on Centos 7

To install Nextcloud 12.03 on CentOS 7

Nextcloud is open source software for creating and using file hosting services. It has a lot of extra Calendar, Sync and Contacts features, apart from their file hosting features. It is a great free alternative to some popular services such as Google Drive, Dropbox, Box,etc. It is so simple to install Nextcloud 12.03 on CentOS 7, and this article covers the ground on the same process.

Requirements

LAMP Stack

  • Apache
  • Mariadb
  • PHP7

Install PHP 7 by

  • rpm -Uvh remi-release-7.rpm epel-release-latest-7.noarch.rpm
  • yum-config-manager --enable remi-php70
  • yum install php php-openssl php-mysql php-mbstring php-dom php-json php-session php-ctype php-tokenizer php-simplexml php-pcre php-zip php-pdo php-curl php-iconv php-xml

Installing Nextcloud 12.03

First, you need to download the latest stable version using wget command as follows.

 [root@linuxhelp ~]# wget https://download.nextcloud.com/server/releases/nextcloud-12.0.3.zip
--2017-11-10 10:40:05--  https://download.nextcloud.com/server/releases/nextcloud-12.0.3.zip
Resolving download.nextcloud.com (download.nextcloud.com)... 88.198.160.133
Connecting to download.nextcloud.com (download.nextcloud.com)|88.198.160.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 56197200 (54M) [application/zip]
Saving to: ‘ nextcloud-12.0.3.zip’ 
100%[======================================> ] 56,197,200   714KB/s   in 4m 13s 
2017-11-10 10:44:20 (217 KB/s) - ‘ nextcloud-12.0.3.zip’  saved [56197200/56197200]

Once it is downloaded, extract it by running the following command.

 [root@linuxhelp ~]# unzip nextcloud-12.0.3.zip -d /var/www/html/
Archive:  nextcloud-12.0.3.zip
   creating: /var/www/html/nextcloud/
   creating: /var/www/html/nextcloud/ocs/
  inflating: /var/www/html/nextcloud/ocs/routes.php  
  inflating: /var/www/html/nextcloud/ocs/v2.php  
  inflating: /var/www/html/nextcloud/ocs/v1.php  
  inflating: /var/www/html/nextcloud/ocs/providers.php  
  inflating: /var/www/html/nextcloud/console.php  
   creating: /var/www/html/nextcloud/ocs-provider/
.
.
.
.
inflating: /var/www/html/nextcloud/resources/config/mimetypemapping.dist.json  
  inflating: /var/www/html/nextcloud/resources/config/ca-bundle.crt  
  inflating: /var/www/html/nextcloud/resources/config/mimetypealiases.dist.json  
   creating: /var/www/html/nextcloud/resources/codesigning/
  inflating: /var/www/html/nextcloud/resources/codesigning/root.crt  
  inflating: /var/www/html/nextcloud/resources/codesigning/root.crl  
  inflating: /var/www/html/nextcloud/resources/codesigning/core.crt  

After that, move to your Apache document root and list the contents of your directory.

[root@linuxhelp ~]# cd /var/www/html/
[root@linuxhelp html]# ls -l
total 4
drwxr-xr-x 14 root root 4096 Sep 20 02:44 nextcloud

Provide appropriate owner permission and file execution permission.

[root@linuxhelp html]# chown -R apache:apache /var/www/html/
[root@linuxhelp html]# chmod -R 775 /var/www/html/

Next, you need to do a crucial step. You need to configure your Apache VirutalHost. Open the .conf file as follows.

[root@linuxhelp html]# vim /etc/httpd/conf.d/nextcloud.conf
And make the following modifications in it. 
< VirtualHost *:80> 
DocumentRoot " /var/www/html" 
ServerName www.linuxhelp1.com
< Directory " /var/www/html/" > 
DirectoryIndex index.php
Options FollowSymLinks
AllowOverride All
Require all granted
< /Directory> 
< /VirtualHost> 

Once it is done, you shall restart your Apache Service as follows.

[root@linuxhelp html]# systemctl restart httpd

And also, make sure you make the necessary Firewall configuration as follows.

[root@linuxhelp html]# firewall-cmd --add-port=80/tcp
success
[root@linuxhelp html]# firewall-cmd --add-port=443/tcp
success
[root@linuxhelp html]# firewall-cmd --reload
Success

Go to the login page of NextCloud and enter your credentials to login.

In the Storage & Database section, you can see the MySQL/MariaDB details.


Enter the needed details and click on the Finish setup button.

You will be taken to your NextCloud dashboard.

With this, the installation of NextCloud 12.03 on CentOS 7 comes to an end.

FAQ
Q
what are all the ports to be enable for next cloud in centos?
A
use the below command to enable the port of nextcloud
# firewall-cmd --add-port=80/tcp
# firewall-cmd --add-port=443/tcp
# firewall-cmd --reload
Q
where to download the nextcloud package in terminal?
A
you need to download the latest stable version using wget command as follows
# wget https://download.nextcloud.com/server/releases/nextcloud-12.0.3.zip
Q
what are required php modules to install Nextcloud?
A
the required php modules to install Nextcloud are,

php-openssl php-mysql php-mbstring php-dom php-json php-session php-ctype php-tokenizer php-simplexml php-pcre php-zip php-pdo php-curl php-iconv php-xml
Q
what are the requirements needed for nextcloud?
A
the requirements needed for nextcloud are "LAMP Stack"

Apache
Mariadb
PHP7
Q
where can I get the latest releases for nextcloud?
A
the latest releases for nextcloud by below link https://download.nextcloud.com/server/releases/