Установка Nextcloud 11 на CentOS 7

Автор: | 28.09.2018

Установка Nextcloud 11 на CentOS 7 – простая задача, если вы выполните следующие шаги. Nextcloud – это программное обеспечение с открытым исходным кодом для создания и использования служб хостинга файлов. Он имеет множество дополнительных функций Calendar, Sync и Contacts, помимо функций их размещения файлов. Это отличная бесплатная альтернатива некоторым популярным сервисам, таким как Google Диск, Dropbox, Box и т.д. В этом статье мы рассмотрим как установить Nextcloud 11 на CentOS 7.

Чтобы запустить Nextcloud на вашем VPS, необходимо выполнить следующие требования:
MySQL или MariaDB
PHP 7.0 +
Apache 2.4 с модулем mod_php

Выключить Selinux на время установки. Включенный Selinux может привести к странному поведению во время установки.
Выключить Selinux на CentOS 7 можно с помощью команд:
sed -i 's/\(^SELINUX=\).*/\SELINUX=disabled/' /etc/sysconfig/selinux
sed -i 's/\(^SELINUX=\).*/\SELINUX=disabled/' /etc/selinux/config

После чего перезагрузим систему:
reboot

1. ОБНОВИТЕ СИСТЕМУ
yum -y update

2. УСТАНОВИТЕ СЕРВЕР MARIADB
yum -y install mariadb mariadb-server
После его установки запустите MariaDB и включите его при запуске:
systemctl start mariadb
systemctl enable mariadb

и запустите скрипт mysql_secure_installation после установки, чтобы завершить настройку MariaDB:

mysql_secure_installation

Enter current password for root (enter for none): ENTER
Set root password? [Y/n] Y
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

После установки MariaDB войдите на сервер базы данных как пользователь root и создайте базу данных и пользователя для Nextcloud:
mysql -u root -p
MariaDB [(none)]> CREATE DATABASE nextcloud;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost' IDENTIFIED BY 'YOURPASSWORD';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

3. УСТАНОВИТЕ APACHE WEB SERVER
yum install httpd -y
yum -y install mod_ssl

запустить Apache
systemctl start httpd.service
systemctl enable httpd.service

4. УСТАНОВИТЕ PHP 7
Версия PHP по умолчанию для CentOS 7 – это PHP 5.4. Мы установим PHP версии 7.
Установите пакеты репозитория Remi и EPEL:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Включить Remi PHP 7 repo:
yum install yum-utils
yum-config-manager --enable remi-php70

и установите PHP 7 и несколько PHP-модулей, требуемых Nextcloud, выполнив следующую команду:
yum -y install php php-mysql php-pecl-zip php-xml php-mbstring php-gd
Затем откройте файл конфигурации PHP и увеличьте размер загружаемого файла. Вы можете найти расположение файла конфигурации PHP, выполнив следующую команду:
php --ini |grep Loaded
Loaded Configuration File: /etc/php.ini

В нашем случае мы должны внести изменения в файл /etc/php.ini. Мы увеличим лимит загрузки по умолчанию до 100 МБ. Вы можете установить значения в соответствии с вашими потребностями. Выполните следующие команды:
sed -i "s/post_max_size = 8M/post_max_size = 100M/" /etc/php.ini
sed -i "s/upload_max_filesize = 2M/upload_max_filesize = 100M/" /etc/php.ini

и перезапустите веб-сервер:
systemctl restart httpd

5. УСТАНОВИТЕ NEXTCLOUD
Перейдите на официальный сайт Nextcloud и загрузите последнюю стабильную версию приложения
yum install wget
wget https://download.nextcloud.com/server/releases/nextcloud-11.0.2.zip
или
wget https://download.nextcloud.com/server/releases/nextcloud-14.0.1.zip

распакуйте загруженный zip-архив в корневой каталог документа на вашем сервере
yum install unzip
unzip nextcloud-11.0.2.zip -d /var/www/html/
или
unzip nextcloud-14.0.1.zip -d /var/www/html/

Установите пользователя Apache как владельца файлов Nextcloud
chown -R apache:apache /var/www/html/nextcloud/
Наконец, доступ к Nextcloud в http://yourIP/nextcloud. Мастер установки проверяет, все ли все требования, и если все в порядке, вам будет предложено создать пользователя admin и выбрать хранилище и базу данных. Выберите MySQL / MariaDB как базу данных и введите данные для базы данных, которую мы создали ранее в этом сообщении:
Database user: nextclouduser
Database password: YOURPASSWORD
Database name: nextcloud
host: localhost