Скидка 50% на все тарифы, ограниченное время. От $2.48/mo
13 мин. осталось
Веб и бизнес-приложения

Как установить Nextcloud: пошаговое руководство для Ubuntu и Debian

Ник Сильвер By Ник Сильвер 13 мин. чтения Обновлено 22 июл. 2025 г.
Как установить Nextcloud: пошаговое руководство для Ubuntu и Debian

Всё больше пользователей отказываются от популярных сервисов вроде Google Drive и Dropbox в пользу self-hosted решений, где данные остаются под вашим контролем. Один из таких вариантов — Nextcloud.

В этой статье вы найдёте полное пошаговое руководство по установке Nextcloud Docker на системы Ubuntu и Debian. Мы разберём всё: от обновления системы и установки зависимостей до настройки веб-сервера и PHP, создания базы данных и финальной настройки через Nextcloud Docker Compose.

Зачем самостоятельно размещать Nextcloud?

Self-hosting Nextcloud — это полный контроль над собственным облачным хранилищем без зависимости от таких сервисов, как Google Drive или Dropbox. Вы сами решаете, как хранить и раздавать файлы, владеете своими данными и управляете настройками приватности.

Многих привлекает возможность гибко расширять платформу через плагины и интеграции. Nextcloud docker и Nextcloud docker compose позволяют быстро развернуть надёжную систему обмена файлами — и для Nextcloud Ubuntu, и для Nextcloud Debian готовые образы доступны сразу.

Это практичный вариант, если вы хотите установить Nextcloud и не зависеть от ограничений сторонних сервисов. Процесс Nextcloud docker install достаточно прост, чтобы с ним справился даже тот, кто не имеет опыта администрирования серверов.

Установка Nextcloud Docker обходится дешевле коммерческих облачных решений: вы платите только за своё железо или серверный инстанс. При этом гибкость настройки — будь то параметры PHP или подключение базы данных MySQL — позволяет адаптировать среду под любые задачи.

Если вы разбираетесь, как установить Nextcloud docker, вам поможет активное сообщество: в открытом доступе есть множество примеров Nextcloud docker compose, так что процесс получится не только полезным, но и познавательным.

Требования

Перед началом установки стоит убедиться, что окружение готово к работе. В этом разделе описаны основные требования: системные, серверные и программные зависимости для корректной установки Nextcloud docker install:

Компонент Требования/Параметры Примечания
Операционная система Ubuntu (22.04 LTS — рекомендуется, 24.04 LTS), Red Hat Enterprise Linux 9/8, Debian 12 (Bookworm), SUSE Linux Enterprise Server 15, openSUSE Leap 15.5, CentOS Stream, Alpine Linux Nextcloud Ubuntu пользуется наибольшей популярностью
CPU и архитектура ОС 64-бит Убедитесь, что CPU, ОС и PHP — 64-битные
PHP PHP 8.3 (или другие версии) Используйте 64-битную версию во избежание проблем с совместимостью
Память Минимум: 128 МБ RAM на процесс; рекомендуется: 512 МБ на процесс; обновление: 256 МБ Настройте под фактическую нагрузку
Доступ Доступ root или sudo Требуется для низкоуровневой настройки системы
Инструменты контейнеризации Docker, Docker Compose Упрощает установку и управление
Веб-сервер Apache 2.4 (рекомендуется mod_php или php-fpm) или nginx с php-fpm Выбирайте исходя из личных или корпоративных потребностей
База данных MySQL (8.0/8.4), MariaDB (рекомендуется 10.6/10.11 или 11.4), либо PostgreSQL Требуется поддержка InnoDB и уровня изоляции READ COMMITTED

Шаг 1: обновление и подготовка системы

Перед развёртыванием экземпляра Nextcloud Docker обновите систему и установите все необходимые компоненты. Выполните следующие команды на сервере Nextcloud Ubuntu:

Обновление списка пакетов и установленных пакетов:

Обновите репозитории и установленные пакеты с помощью этих команд:

sudo apt update
sudo apt upgrade -y

 

Установка Docker, Docker Compose и вспомогательных утилит:

Установите Docker, Docker Compose и полезные утилиты - curl, wget и build-essential - следующей командой:

sudo apt install docker.io docker-compose curl wget build-essential -y

 

(Необязательно) Добавьте пользователя в группу Docker:

Этот шаг позволяет запускать команды Docker без префикса sudo каждый раз:

sudo usermod -aG docker $USER

После выполнения команды выйдите из системы и войдите снова, чтобы изменения вступили в силу.

 

Проверка установки:

Убедитесь, что Docker и Docker Compose установлены корректно:

docker –version
docker-compose --version

Также рекомендуется следить за логами Docker для диагностики проблем. Как это сделать, описано в этих инструкциях.

Теперь, когда система обновлена и все зависимости установлены, важно выбрать надёжное хостинговое решение. Cloudzy предлагает быстрые VPS сервисы с хранилищем до 240 GB NVMe SSD (до 2 TB при подключении нашего GPU VPS) и временем безотказной работы 99.95%, что делает его отличным выбором для размещения вашего экземпляра Nextcloud.

Далее мы настроим веб-сервер и скорректируем параметры PHP, чтобы всё корректно работало с вашим экземпляром Nextcloud Docker.

 

Шаг 2: Настройка Apache/Nginx и PHP

Система готова — теперь займёмся настройкой веб-сервера и PHP. В этом разделе описана настройка Apache и Nginx, а также изменения PHP, необходимые для корректной работы Nextcloud в Docker.

Настройка Apache

Если вы используете Apache, выполните следующие шаги:

Создайте файл конфигурации:

  • Откройте новый файл для Nextcloud:
sudo nano /etc/apache2/sites-available/Nextcloud.conf

 

  • Добавьте в этот файл следующее:
Alias /Nextcloud "/var/www/Nextcloud/"

<Directory /var/www/Nextcloud/>
Требовать все предоставленные
Разрешить переопределение всем
Параметры FollowSymLinks MultiViews

<IfModule mod_dav.c>
Dav off
</IfModule>
</Directory>

 

Активируйте сайт:

  • Включите новую конфигурацию:
sudo a2ensite Nextcloud.conf

 

Включите необходимые модули Apache:

  • Выполните следующие команды, чтобы активировать нужные модули:
sudo a2enmod rewrite
sudo a2enmod headers
sudo a2enmod env
sudo a2enmod dir
sudo a2enmod mime

 

Если вы планируете использовать PHP-FPM с Apache (через mod_fcgi), также активируйте:

sudo a2enmod setenvif

 

Включение SSL (опционально):

  • Для защищённого соединения активируйте SSL командой:
sudo a2enmod ssl
sudo a2ensite default-ssl
sudo service apache2 reload

 

Настройка Nginx

  • Пользователям Nginx потребуется создать серверный блок:

Создайте файл серверного блока:

  • Откройте новый файл:
sudo nano /etc/nginx/sites-available/Nextcloud
  • Вставьте пример конфигурации:
server {
listen 80;
server_name your-server-ip or cloud.example.com;root /var/www/Nextcloud/;
index index.php index.html /index.php$request_uri;location / {
try_files $uri $uri/ /index.php?$args;
}location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

 

Активация конфигурации:

  • Создайте символическую ссылку для включения сайта:
sudo ln -s /etc/nginx/sites-available/Nextcloud /etc/nginx/sites-enabled/

 

Проверка и перезагрузка Nginx:

  • Проверьте конфигурацию и перезагрузите сервер:
sudo nginx -t
sudo systemctl reload nginx

 

Настройка параметров PHP

Nextcloud требует определённых настроек PHP. Измените их в соответствующем файле конфигурации PHP:

Для Apache с PHP:

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

 

Для Nginx с PHP-FPM:

sudo nano /etc/php/8.3/fpm/php.ini

В файле измените следующие параметры:

  • memory_limit (например, 512M)
  • upload_max_filesize (например, 100M)
  • post_max_size (например, 100M)
  • max_execution_time (например, 360)

После внесения изменений перезапустите соответствующие службы:

  • Apache:
sudo service apache2 restart

 

  • PHP-FPM:
sudo systemctl restart php8.3-fpm

 

Веб-сервер настроен, PHP оптимизирован — можно переходить к следующему шагу: настройке базы данных для хранения всех данных Nextcloud.

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

Система и веб-сервер настроены. Следующий шаг — создать базу данных для Nextcloud: завести саму БД и отдельного пользователя с нужными правами. Вот как это сделать:

1. Установка сервера MariaDB

Установите пакет сервера MariaDB:

sudo apt install mariadb-server -y

 

2. Защита установки MariaDB

Запустите скрипт безопасности, чтобы убрать небезопасные настройки по умолчанию:

sudo mysql_secure_installation

 

Скрипт предложит задать пароль root и ответить на несколько вопросов по безопасности. На все запросы рекомендуется отвечать 'Y' (да).

3. Вход в оболочку MariaDB

Подключитесь к оболочке MariaDB от имени пользователя root:

sudo mysql -u root -p

Введите пароль root, заданный при настройке безопасности.

4. Создание базы данных для Nextcloud

В оболочке MariaDB выполните следующую команду, чтобы создать базу данных с именем Nextcloud:

CREATE DATABASE Nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

 

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

Создайте нового пользователя Nextclouduser с надёжным паролем. Замените your_password_here на пароль по вашему выбору:

CREATE USER 'Nextclouduser'@'localhost' IDENTIFIED BY 'your_password_here';

 

6. Назначение прав пользователю

Выдайте пользователю Nextclouduser все права на базу данных Nextcloud:

GRANT ALL PRIVILEGES ON Nextcloud.* TO 'Nextclouduser'@'localhost';

 

7. Примените изменения

Обновите привилегии, чтобы все изменения вступили в силу:

ОЧИСТИТЬ ПРИВИЛЕГИИ;

 

8. Выйдите из оболочки MariaDB

Выйдите из оболочки MariaDB, введя:

EXIT;

 

База данных настроена и готова к работе. Теперь можно переходить к следующему шагу: установке Nextcloud. Вам потребуется скачать файлы Nextcloud и настроить их подключение к только что созданной базе данных.

Шаг 4: Загрузка и установка Nextcloud

На этом шаге вы установите последнюю версию Nextcloud и выполните её начальную настройку. Доступны два варианта: с использованием Docker для контейнерного развёртывания или традиционная ручная установка.

Способ 1: Использование официального образа Docker

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

Загрузите образ Nextcloud для Docker:

Скачайте последний образ Nextcloud для Docker из Docker Hub:

docker pull Nextcloud

 

Создайте файл Docker Compose:

Для удобного управления создайте файл docker-compose.yml со следующим содержимым:

version: '3'

services:
Nextcloud:
изображение: Nextcloud
перезагружать: всегда
ports:
– 8080:80
volumes:
– Nextcloud_data:/var/www/html
environment:
– MYSQL_PASSWORD=yourpassword
– MYSQL_DATABASE=Nextcloud
– MYSQL_USER=Nextcloud
– MYSQL_HOST=db
db:
изображение: mariadb
перезагружать: всегда
environment:
– MYSQL_ROOT_PASSWORD=yourpassword
– MYSQL_PASSWORD=yourpassword
– MYSQL_DATABASE=Nextcloud
– MYSQL_USER=Nextcloud
volumes:
– db_data:/var/lib/mysql

volumes:
Nextcloud_data:
db_data:

 

Запуск контейнеров:

Выполните эту команду, чтобы запустить контейнеры Nextcloud и базы данных в фоновом режиме:

docker-compose up -d

 

Способ 2: установка вручную из архива Nextcloud

Если вы предпочитаете работать с файлами напрямую, вот как это сделать:

Загрузка последней версии:

Скачайте последний tar-архив Nextcloud:

wget https://download.Nextcloud.com/server/releases/latest.tar.bz2

 

Распаковка архива:

Распакуйте скачанный файл:

tar -xjf latest.tar.bz2

 

Перемещение папки Nextcloud:

Переместите распакованную папку в директорию веб-сервера:

sudo mv Nextcloud /var/www/Nextcloud

Настройка прав доступа:

Настройте права владельца, чтобы веб-сервер мог обращаться к файлам:

sudo chown -R www-data:www-data /var/www/Nextcloud

 

Выберите подход, который подходит вам лучше. Метод Docker упрощает установку с помощью Nextcloud docker compose, а ручной метод даёт прямой контроль над файлами. К тому же использование Docker VPS тарифов Cloudzy создаёт удобную платформу для развёртывания Nextcloud через Docker и упрощает процесс установки.

Далее мы перейдём к настройке самого Nextcloud: настроим виртуальный хост, подключим SSL и завершим развёртывание собственного облачного хранилища.

Шаг 5: Настройка Nextcloud

Теперь, когда Nextcloud загружен и установлен, нужно создать виртуальный хост Apache и защитить сайт с помощью SSL, чтобы получить доступ к личному облачному хранилищу через выделенный домен.

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

Создайте файл конфигурации для Nextcloud:

sudo nano /etc/apache2/sites-available/Nextcloud.conf

 

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

Замените DocumentRoot и ServerName в соответствии с вашими настройками (например, вместо cloud.example.com укажите ваш домен или IP-адрес сервера):

<VirtualHost *:80>
DocumentRoot /var/www/Nextcloud/
ServerName cloud.example.com<Directory /var/www/Nextcloud/>
Требовать все предоставленные
Разрешить переопределение всем
Options FollowSymLinks MultiViews<IfModule mod_dav.c>
Dav off
</IfModule>
</Directory>
</VirtualHost>

 

Активация новой конфигурации

Укажите Apache новую конфигурацию:

sudo a2ensite Nextcloud.conf

 

Перезагрузите Apache:

Примените изменения, перезагрузив Apache:

sudo systemctl reload apache2

 

Защита сайта с помощью SSL

Для безопасного доступа можно настроить SSL. Есть два распространённых способа: использовать самоподписанный сертификат или получить сертификат через Let's Encrypt.

Вариант 1: самоподписанный сертификат

Включите модуль SSL:

sudo a2enmod ssl

 

Включить сайт SSL по умолчанию:

sudo a2ensite default-ssl

 

Перезагрузите Apache:

sudo systemctl reload apache2

 

Установить Certbot и плагин Apache:

sudo apt install certbot python3-certbot-apache -y

 

  1. Получить и установить сертификат:
    Замените cloud.example.com на ваш домен:
sudo certbot –apache -d cloud.example.com

Следуйте инструкциям на экране, чтобы завершить процесс.

После настройки виртуального хоста Apache и SSL ваш экземпляр Nextcloud готов принимать защищённые подключения с выбранного домена. Следующий шаг — настройка базы данных для хранения данных Nextcloud, которая связывает всё воедино и обеспечивает работу самостоятельно размещённого облака.

Шаг 6: завершение настройки

Веб-сервер и PHP настроены — пора завершить установку. Это последний этап перед тем, как запустить всё в работу.

Настройка прав доступа к файлам:

Перед запуском мастера установки выполните следующую команду, чтобы убедиться, что веб-сервер имеет доступ ко всем файлам Nextcloud:

sudo chown -R www-data:www-data /var/www/Nextcloud/

Открыть Nextcloud в браузере:

Откройте браузер и введите URL вашего экземпляра Nextcloud, например:

http://your-server-ip/Nextcloud

Откроется мастер установки Nextcloud — удобный интерфейс, который проведёт вас через финальные шаги настройки.

Завершение работы с мастером установки:

В мастере вам нужно будет указать:

  • Данные базы данных: хост, имя, пользователь и пароль. В конфигурации Docker хост базы данных обычно задаётся как имя контейнера или localhost.
  • Имя пользователя и пароль администратора для вашего экземпляра Nextcloud.

Следуйте инструкциям на экране и нажмите кнопку «Finish setup», когда закончите.

После завершения работы мастера Nextcloud завершит настройку, и вы увидите новую панель управления. Далее перейдём к настройке параметров после установки: cron-задачи, кэширование и параметры безопасности, чтобы экземпляр работал стабильно.

Шаг 7: настройка после установки

После завершения работы с мастером веб-установки Nextcloud несколько дополнительных настроек помогут оптимизировать выполнение задач по расписанию, производительность и безопасность. Этот раздел посвящён настройке фоновых задач, интеграции кэширования с Redis и усилению защиты вашего экземпляра Nextcloud.

Настройка Cron-заданий для фоновых задач

Чтобы Nextcloud работал стабильно, рекомендуется настроить автоматическое выполнение фоновых задач. Создайте cron-задание, которое будет запускать cron-скрипт Nextcloud каждые пять минут. Откройте crontab для пользователя веб-сервера (обычно www-data):

sudo crontab -u www-data -e

Затем добавьте эту строку в конец файла:

*/5 * * * * php -f /var/www/Nextcloud/cron.php

Сохраните файл и закройте редактор. Это задание будет отвечать за очистку временных файлов, отправку уведомлений и другие задачи обслуживания.

Установка и настройка Redis для кэширования

Redis ускоряет работу Nextcloud за счёт кэширования данных и оптимизации блокировки файлов. Для начала установите Redis и расширение PHP для Redis:

sudo apt install redis-server php-redis -y

Затем обновите файл конфигурации Nextcloud (как правило, он находится по пути /var/www/Nextcloud/config/config.php), добавив параметры кэширования. Включите эти строки в массив $CONFIG:

'memcache.local' => '\\OC\\Memcache\\APCu',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' => array(
'host' => 'localhost',
'port' => 6379,
),

Эта конфигурация указывает Nextcloud использовать APCu для локального кэширования и Redis для блокировки файлов, что повышает как производительность, так и надёжность.

Усиление безопасности Nextcloud

Несколько дополнительных мер помогут укрепить безопасность вашей установки:

  • Установите правильные права доступа к файлам:
    Настройте владельца и права доступа к директории Nextcloud, чтобы ограничить доступ к ней:
sudo chown -R www-data:www-data /var/www/Nextcloud
sudo find /var/www/Nextcloud/ -type d -exec chmod 750 {} \;
sudo find /var/www/Nextcloud/ -type f -exec chmod 640 {} \;
  • Команды режима обслуживания:
    Временно включите режим обслуживания, чтобы выполнить дополнительные проверки безопасности или обновить конфигурацию:
sudo -u www-data php /var/www/Nextcloud/occ maintenance:mode –on
# (Выполните необходимые задачи обслуживания)
sudo -u www-data php /var/www/Nextcloud/occ maintenance:mode --off
  • Проверьте конфигурацию веб-сервера:
    Убедитесь, что настройки Apache или Nginx включают HTTPS и ограничивают несанкционированный доступ там, где это необходимо.

После выполнения этих шагов ваш экземпляр Nextcloud будет корректно обрабатывать фоновые задачи, работать быстрее благодаря кешированию и надёжнее защищать данные от потенциальных угроз.

Заключение

Теперь ваша установка Nextcloud на Docker прошла путь от чистого листа до полноценного решения для самостоятельного хранения файлов в облаке. Система обновлена, зависимости установлены, веб-сервер и PHP настроены — ваша среда Nextcloud Ubuntu готова стать личным хабом для обмена файлами.

Пока вы продолжаете настраивать систему, экспериментировать с расширенными конфигурациями или изучать новые приложения Nextcloud, стоит уделить внимание выбору хостинг-провайдера. Надёжный и доступный VPS вроде Cloudzy гарантирует, что ваш экземпляр Nextcloud останется защищённым и отзывчивым — это прочная основа для всех ваших задач облачного хранения.

Для дополнительной уверенности рекомендуем ознакомиться с официальными руководствами по безопасности на странице Усиление безопасности Nextcloud и рекомендациями по резервному копированию на странице Руководство по резервному копированию Nextcloud. Эти материалы помогут сохранить ваши данные в безопасности и обеспечить стабильную работу сервера.

Поделиться

Другие статьи блога

Читать дальше.

Обзорное изображение Odoo: крупный заголовок слева, логотип Odoo справа, вокруг — панели интерфейса приложения на мягком фиолетовом фоне с облаками.
Веб и бизнес-приложения

Подробный обзор Odoo: подходит ли эта ERP-система для вашего бизнеса

Odoo — одна из наиболее популярных ERP-платформ среди растущих компаний, и причина проста: система обещает закрыть сразу много задач. Продажи, бухгалтерия, склад

Джим ШварцДжим Шварц 11 мин. чтения
Обзорное изображение для статьи об open-source альтернативах WordPress: цветной градиентный фон, монитор, редактор кода, размытый превью дашборда и крупный заголовок слева.
Веб и бизнес-приложения

Лучшие open-source альтернативы WordPress для разработчиков

WordPress по-прежнему востребован и отлично справляется с широким спектром задач. В его директории плагинов — более 62 000 решений, а в каталоге тем — свыше 14 000 бесплатных вариантов. Это

Джим ШварцДжим Шварц 14 мин. чтения
Обзорное изображение для сравнения Automad и WordPress: логотипы обеих платформ и заголовок с вопросом, какую CMS выбрать разработчику.
Веб и бизнес-приложения

Automad vs. WordPress: детальное сравнение двух CMS-платформ

Automad и WordPress решают одну задачу принципиально разными способами. Automad — это flat-file CMS с шаблонизатором: контент хранится в файлах, а не в базе данных. WordPress,

Джим ШварцДжим Шварц 9 мин. чтения

Готовы к деплою? От $2.48/мес.

Независимый облачный провайдер с 2008 года. AMD EPYC, NVMe, 40 Gbps. Возврат средств в течение 14 дней.