Как установить Nextcloud на Debian 12

В этом руководстве мы расскажем, как установить Nextcloud на ОС Debian 12. Nextcloud – это клиент-серверное программное обеспечение с открытым исходным кодом, схожее по функциональности с Dropbox, Google Drive и Office 365. Оно написано на PHP и использует MySQL или PostgreSQL для хранения данных. Nextcloud доступен на более чем пятидесяти языках и предоставляет такие возможности, как онлайн-хранилище, синхронизация данных, совместная работа, видеоконференции и многое другое. В этой статье мы установим Nextcloud с помощью стека LAMP.

Установка Nextcloud со стеком LAMP – несложный процесс, который может занять до 20 минут. Давайте приступим!

Шаг 1. Обновление системы

Мы предполагаем, что у вас установлена свежая версия Debian 12. Рекомендуется обновить пакеты до последней доступной версии, прежде чем предпринимать какие-либо действия на сервере.

sudo apt update -y && sudo apt upgrade -y

Шаг 2. Установите веб-сервер Apache

Первым в стеке LAMP будет установлен веб-сервер Apache. Для его установки выполните следующую команду:

sudo apt install apache2 -y

После установки запустите и включите службу Apache:

sudo systemctl start apache2 && sudo systemctl enable apache2

Чтобы проверить состояние службы, выполните следующую команду:

sudo systemctl status apache2

Вы должны получить следующее сообщение:

root@host:~# sudo systemctl status apache2
● apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; preset: enabled)
     Active: active (running) since Tue 2024-06-18 18:10:43 CDT; 20h ago
       Docs: https://httpd.apache.org/docs/2.4/
   Main PID: 723 (apache2)
      Tasks: 10 (limit: 4644)
     Memory: 29.3M
        CPU: 5.089s
     CGroup: /system.slice/apache2.service
Jun 18 18:10:43 host.test.vps systemd[1]: Started apache2.service - The Apache HTTP Server.

Шаг 3. Установите PHP с расширениями

Далее необходимо установить PHP8.2 с расширениями. Выполните следующую команду:

sudo apt install php php-curl php-cli php-mysql php-gd php-gmp libmagickcore-dev php-redis php-memcached php-common php-xml php-json php-intl php-pear php-dev php-common php-mbstring php-zip php-soap php-bz2 php-bcmath php-imagick -y

После завершения установки PHP проверьте версию с помощью следующей команды:

php -v

Вы должны получить следующий результат:

root@host:~# php -v
PHP 8.2.18 (cli) (built: Apr 11 2024 22:07:45) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.18, Copyright (c) Zend Technologies
    with Zend OPcache v8.2.18, Copyright (c), by Zend Technologies

Шаг 4. Установите службу базы данных MariDB

Последней в стеке LAMP будет служба баз данных. Мы установим службу базы данных MariaDB с помощью следующей команды:

sudo apt install mariadb-server -y

После установки запустите и включите службу:

sudo systemctl start mariadb && sudo systemctl enable mariadb

Чтобы проверить состояние службы, выполните следующую команду:

sudo systemctl status mariadb

Вы получите вывод, аналогичный этому:

root@host:~# sudo systemctl status mariadb
● mariadb.service - MariaDB 10.11.6 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; preset: enabled)
     Active: active (running) since Wed 2024-06-18 15:16:49 CDT; 2min 25s ago
       Docs: man:mariadbd(8)
             https://mariadb.com/kb/en/library/systemd/
   Main PID: 14008 (mariadbd)
     Status: "Taking your SQL requests now..."
      Tasks: 9 (limit: 4644)
     Memory: 211.7M
        CPU: 960ms
     CGroup: /system.slice/mariadb.service
             └─14008 /usr/sbin/mariadbd
Jun 18 15:16:49 host.test.vps systemd[1]: Started mariadb.service - MariaDB 10.11.6 database server.
Jun 18 15:16:49 host.test.vps /etc/mysql/debian-start[14034]: Checking for insecure root accounts.
Jun 18 15:16:49 host.test.vps /etc/mysql/debian-start[14038]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables

Шаг 5. Создайте базу данных MySQL и пользователя

Стек LAMP установлен, и следующим шагом будет создание базы данных MySQL, пользователя MySQL и прав доступа для этого пользователя к базе данных.

Для этого войдите в консоль MySQL и выполните следующие команды:

CREATE DATABASE nextcloud;
CREATE USER nextclouduser@localhost IDENTIFIED BY 'YourStrongPasswordHere';
GRANT ALL PRIVILEGES ON nextcloud.* TO nextclouduser@localhost;
FLUSH PRIVILEGES;
EXIT;

Шаг 6. Скачайте и установите Nextcloud

Сначала нам нужно загрузить Nextcloud в корень документа Apache:

cd /var/www/html
curl -o nextcloud.zip https://download.nextcloud.com/server/releases/latest.zip

Затем нам нужно распаковать файл и установить нужные разрешения:

unzip nextcloud.zip
chown -R www-data:www-data nextcloud/

Шаг 7. Создание файла виртуального хоста Apache

Создайте файл конфигурации Apache с помощью следующей команды:

touch /etc/apache2/sites-available/nextcloud.conf

Откройте файл в вашем любимом редакторе и вставьте следующие строки кода:

<VirtualHost *:80>
    ServerName YourDomainNameHere
    DocumentRoot /var/www/nextcloud/
    <Directory /var/www/nextcloud/>
        Options +FollowSymlinks
        AllowOverride All
    </Directory>
</VirtualHost>

Сохраните файл, закройте его и включите сайт с модулем перезаписи:

sudo a2enmod rewrite
sudo a2ensite nextcloud

Проверьте, все ли в порядке с синтаксисом Apache:

root@host:/var/www/html# apachectl -t
Syntax OK

Затем перезапустите службу Apache:

sudo systemctl restart apache2

Теперь вы можете получить доступ к установке по адресу http://YourDomainHere, чтобы завершить установку

Шаг 8. Завершение установки Nextcloud

После входа в домен на первом экране необходимо ввести имя пользователя admin и пароль, а также заполнить учетные данные базы данных, которые вы создали на шаге 5. После заполнения нажмите на кнопку Install.

Установка будет завершена в фоновом режиме и перенаправит вас на панель администратора.

Вот и всё. Вы успешно научились устанавливать Nextcloud на Debian 12.

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Вдохновлен www.rosehosting.com

Похожие статьи

Комментарии (0)