Найти в Дзене

Делаем свое облако за 5 минут: на все устройства (Nextcloud)

☁️ Для начала понадобится виртуальный сервер, который можно арендовать здесь. Далее необходимо настроить веб-сервер, показывал как это сделать в видео. После уже можно переходить к настройке облака. Я буду использовать: домен server.denpiligrim.ru - указывает на IP 37.1.204.148. Вы используете свои. Установите MariaDB, PHP и необходимые модули для Nextcloud. sudo apt install mariadb-server php php-mysql php-gd php-json php-curl php-mbstring php-intl php-imagick php-xml php-zip php-apcu php-bcmath php-gmp unzip -y Проверьте версию PHP: php -v Убедитесь, что установлена версия PHP 8.2 или выше, так как Nextcloud 29 поддерживает PHP 8.2–8.3. Отредактируйте файл php.ini для оптимизации Nextcloud. Удобнее выгрузить файл по FTP/SFTP и редачить в редакторе кода или блокноте. sudo nano /etc/php/*/apache2/php.ini Установите следующие параметры: memory_limit = 512M upload_max_filesize = 500M post_max_size = 500M max_execution_time = 300 date.timezone = Europe/Moscow opcache.interned_strings_buf
Оглавление

☁️ Для начала понадобится виртуальный сервер, который можно арендовать здесь. Далее необходимо настроить веб-сервер, показывал как это сделать в видео. После уже можно переходить к настройке облака.

Я буду использовать: домен server.denpiligrim.ru - указывает на IP 37.1.204.148. Вы используете свои.

Шаг 1: Установка зависимостей

Установите MariaDB, PHP и необходимые модули для Nextcloud.

sudo apt install mariadb-server php php-mysql php-gd php-json php-curl php-mbstring php-intl php-imagick php-xml php-zip php-apcu php-bcmath php-gmp unzip -y

Проверьте версию PHP:

php -v

Убедитесь, что установлена версия PHP 8.2 или выше, так как Nextcloud 29 поддерживает PHP 8.2–8.3.

Шаг 2: Настройка PHP

Редактирование конфигурации php.ini
Редактирование конфигурации php.ini

Отредактируйте файл php.ini для оптимизации Nextcloud. Удобнее выгрузить файл по FTP/SFTP и редачить в редакторе кода или блокноте.

sudo nano /etc/php/*/apache2/php.ini

Установите следующие параметры:

memory_limit = 512M
upload_max_filesize = 500M
post_max_size = 500M
max_execution_time = 300
date.timezone = Europe/Moscow
opcache.interned_strings_buffer = 10

Сохраните файл (Ctrl+O, Enter, Ctrl+X) и перезапустите Apache:

sudo systemctl restart apache2

Шаг 3: Настройка базы данных MariaDB

Добавляем SQL запросы в MariaDB
Добавляем SQL запросы в MariaDB

Запустите и включите MariaDB:

sudo systemctl start mariadb
sudo systemctl enable mariadb

Настройте безопасность MariaDB:

sudo mariadb-secure-installation
  • Нажмите Enter (пароль root установите позже).
  • Установите пароль root (введите Y и задайте надежный пароль).
  • Ответьте Y на все остальные вопросы для удаления анонимных пользователей, тестовых баз и отключения удаленного входа.

Создайте базу данных и пользователя для Nextcloud:

sudo mariadb

Выполните следующие SQL-команды:

CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'your_secure_password';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Замените your_secure_password на надежный пароль.

Шаг 4: Скачивание и установка Nextcloud

Скачайте последнюю версию Nextcloud для сервера:

cd /tmp
wget https://download.nextcloud.com/server/releases/latest.zip

Распакуйте архив в /var/www:

sudo unzip /tmp/latest.zip -d /var/www/
sudo mv /var/www/nextcloud /var/www/server.denpiligrim.ru/html/nextcloud

Установите разрешения:

sudo chown -R www-data:www-data /var/www/server.denpiligrim.ru/html/nextcloud
sudo chmod -R 755 /var/www/server.denpiligrim.ru/html/nextcloud

Шаг 5: Настройка виртуального хоста Apache

Настройка конфигурации сервера Apache
Настройка конфигурации сервера Apache

Отредактируйте существующий файл конфигурации:

sudo nano /etc/apache2/sites-available/server.denpiligrim.ru.conf

Обновите конфигурацию для поддержки Nextcloud по пути /nextcloud:

<VirtualHost *:80>
ServerName server.denpiligrim.ru
DocumentRoot /var/www/server.denpiligrim.ru/html
ErrorLog ${APACHE_LOG_DIR}/server.denpiligrim.ru-error.log
CustomLog ${APACHE_LOG_DIR}/server.denpiligrim.ru-access.log combined
AddDefaultCharset UTF-8
<Directory /var/www/server.denpiligrim.ru/html/nextcloud/>
Options +FollowSymlinks
AllowOverride All
Require all granted
<IfModule mod_dav.c>
Dav off
</IfModule>
</Directory>
</VirtualHost>

Сохраните файл и включите необходимые модули Apache:

sudo a2enmod rewrite headers dir mime env setenvif
sudo systemctl reload apache2

Обновите конфигурацию HTTPS (созданную Certbot):

sudo nano /etc/apache2/sites-available/server.denpiligrim.ru-le-ssl.conf

Добавьте тот же блок <Directory> для /nextcloud внутри <VirtualHost *:443>:

<Directory /var/www/server.denpiligrim.ru/html/nextcloud/>
Options +FollowSymlinks
AllowOverride All
Require all granted
<IfModule mod_dav.c>
Dav off
</IfModule>
</Directory>

Сохраните и перезапустите Apache:

sudo systemctl reload apache2

Шаг 6: Завершение установки через браузер

Первый вход в панель управления
Первый вход в панель управления

Откройте браузер и перейдите по адресу https://server.denpiligrim.ru/nextcloud, войдите в аккаунт, используя данные для входа, хост оставляем localhost. Скачать Nextcloud на все устройства можно по ссылке.