Проверено на:
- Almalinux 9
- Apache 2.4
- PHP 8.3
- NextCloud 30.0.0
NextCloud предоставляет облачные сервисы с самостоятельным размещением и является хорошей заменой таким платформам, как Box и DropBox. Он работает на вашем собственном сервере, защищая ваши данные и предоставляя вам доступ с вашего настольного компьютера или мобильных устройств. С помощью этого приложения Вы можете синхронизировать все между своими устройствами и делиться файлами с другими.
Обновление ОС.
Обновите операционную систему, чтобы быть уверенным, что все существующие пакеты имеют последние версии:
$ sudo dnf update
Так же установите следующие пакеты
$ sudo dnf install wget nano unzip
Установка web-сервера Apache
Для установки Apache выполните следующую команду
$ sudo dnf install httpd
Запустим сервер
$ sudo systemctl start httpd
И добавим сервис в автозагрузку
$ sudo systemctl enable httpd
Установка PHP и необходимых модулей
В настоящее время в репозиториях Almalinux доступен php версии 8.0, но вы можете установить более позднюю версию PHP из репозитория (Remi), бесплатного стороннего репозитория, в котором развертываются последние сборки PHP.
Добавим репозиторий Remi
$ sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpm
Затем активируем модуль с необходимой нам версией PHP 8.3 с помощью следующей команды:
$ sudo dnf module enable php:remi-8.3
Теперь, когда Вы добавили репозиторий Remi PHP и включили PHP 8.3 в качестве версии по умолчанию в вашей системе, вы можете установить PHP 8.3 с помощью следующей команды:
$ sudo dnf install php
Для бесперебойной работы NextCloud необходимы некоторые дополнительные модули PHP, установим их с помощью следующей команды:
$ sudo dnf install php-mysql php-fpm php-intl php-bcmath php-gmp
//для php старше 8
$ sudo dnf install php83-php-pecl-zip php83-php-gd
Увеличьте лимит памяти PHP в файле /etc/php.ini. Для этого найдем в нем следующую строчку и установим следующий параметр
memory_limit = 512M
Установка MariaDB и создание базы данных
MariaDB 11.5 — это последняя версия системы реляционных баз данных на момент написание статьи. Чтобы иметь возможность установить MariaDB 11.5 на AlmaLinux, вам необходимо добавить репозиторий MariaDB:
$ curl -LsS -O https://downloads.mariadb.com/MariaDB/mariadb_repo_setup
$ sudo bash mariadb_repo_setup --mariadb-server-version=11.5
После добавления репозитория в систему установка MariaDB становится простой задачей, которую можно выполнить с помощью следующей команды:
$ sudo dnf install MariaDB-server MariaDB-client
После завершения установки проверьте установленную версию MariaDB.
$ sudo systemctl status mariadb
Должны получить, примерно, вот такой вывод
● mariadb.service - MariaDB 11.5.2 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─migrated-from-my.cnf-settings.conf
Active: active (running) since Fri 2024-09-20 07:07:58 UTC; 11min ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 694 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 738 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 1362 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Main PID: 773 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 8 (limit: 5781)
Memory: 134.5M
CPU: 7.525s
CGroup: /system.slice/mariadb.service
└─773 /usr/sbin/mariadbd
Если демон в выключенном состоянии, то включить его и добавить в автозагрузку можно следующими командами:
$ sudo systemctl start mariadb
$ sudo systemctl enable mariadb
После установки сервера БД входим в командную строку MariaDB
$ sudo mysql -u root -p
Чтобы создать базу данных, пользователя базы данных и предоставить все привилегии пользователю базы данных, выполните следующие команды:
MariaDB [(none)]> CREATE DATABASE nextcloud_db;
MariaDB [(none)]> CREATE USER 'nextcloud_user'@'localhost' IDENTIFIED BY 'Passw0rd';
MariaDB [(none)]> GRANT ALL ON nextcloud_db.* TO 'nextcloud_user'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT
Установка NextCloud
Используйте следующую команду для загрузки NextCloud (на момент написания статьи, последняя доступная версия была 30.0.0):
$ sudo wget https://download.nextcloud.com/server/releases/nextcloud-30.0.0.zip
Извлеките файл в папку /var/www/ с помощью следующей команды:
$ sudo unzip nextcloud-30.0.0.zip -d /var/www/
Создайте каталог для хранения пользовательских данных:
$ sudo mkdir -p /var/www/nextcloud/data
Дадим разрешение пользователю веб-сервера Apache на доступ к файлам NextCloud,
$ sudo chown -R apache:apache /var/www/nextcloud/
Если файрвол включен, то необходимо открыть порт для доступа к нашему серверу
$ sudo firewall-cmd --add-port=80/tcp --zone=public --permanent
$ sudo firewall-cmd --reload
Конфигурация Apache для NextCloud
Выполните следующую команду, чтобы создать файл конфигурации для вашей установки NextCloud:
$ sudo nano /etc/httpd/conf.d/nextcloud.conf
Добавьте следующий текст:
<VirtualHost *:80>
ServerName cloud.your-domain.com
ServerAdmin webmaster@your-domain.com
DocumentRoot /var/www/nextcloud
<Directory /var/www/nextcloud/>
Options +FollowSymlinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/httpd/cloud.your-domain.com_error.log
CustomLog /var/log/httpd/cloud.your-domain.com_access.log combined
</VirtualHost>
Сохраните изменения и закройте редактор.
Перезапустите сервер Apache
$ sudo systemctl restart httpd
Доступ к NextCloud
Откройте браузер и задите на свой сервер по ip, либо по имени, указанному в конфиге apache
Нажмите кнопку «Установить», вы увидите веб-интерфейс NextCloud.
Заключение.
Вот и все. Вы успешно установили NextCloud на AlmaLinux 8.
Если у вас есть какие-либо вопросы, пожалуйста, оставьте комментарий ниже.
Was this helpful?
1 / 0