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

Автор: команда ApexVPS • Обновлено: июль 2026 • 9 мин чтения

Это руководство по настройке nextcloud vps проведет вас через создание собственного приватного облака — файлы, календари, контакты и фотографии — на сервере, которым вы полностью управляете. Запуск Nextcloud на VPS дает вам выделенные ресурсы, полный root-доступ и отсутствие абонентской платы за пользователя, так что ваши данные остаются вашими. Ниже вы найдете предварительные требования, два проверенных пути установки (Docker Compose или ручной стек LAMP), как добавить HTTPS с Let's Encrypt, а также шаги по настройке и резервному копированию, которые поддерживают сервер быстрым и безопасным. Все команды предназначены для свежего сервера Ubuntu или Debian.

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

Nextcloud — это платформа с открытым исходным кодом, которая заменяет Google Drive, Dropbox и значительную часть офисного пакета программным обеспечением, которое вы запускаете сами. VPS — естественное место для него: в отличие от общего хостинга, вы получаете root-доступ, фиксированную ежемесячную стоимость и предсказуемую производительность. На действительно выделенном VPS нет шумных соседей, конкурирующих за процессор, что важно, когда несколько человек одновременно синхронизируют файлы. Если вы оцениваете, какие сервисы стоит запускать самостоятельно, наш обзор выбора VPS для самостоятельного хостинга сравнивает типичные нагрузки и необходимый запас ресурсов для каждой.

Предварительные требования перед началом

Вам понадобятся три вещи: VPS с Ubuntu 22.04/24.04 или Debian 12, доменное имя, для которого вы можете редактировать DNS, и SSH-доступ к серверу с правами sudo. Домен не строго обязателен для тестирования, но без него нельзя выпустить доверенный TLS-сертификат, поэтому для реального использования считайте его обязательным.

Выбор правильного размера VPS

Размер зависит от того, сколько людей используют сервер и храните ли вы медиафайлы. Для одного пользователя или семьи, синхронизирующей документы, достаточно 2 vCPU и 4 ГБ RAM. Когда вы добавите приложения Photos, Memories или медиа, или приведете более чем несколько активных учетных записей, перейдите на тариф Business или выше — дополнительная RAM, более быстрый NVMe и почасовые снимки делают создание миниатюр и предварительный просмотр значительно более плавными. Вы можете сравнить тарифы на нашей странице цен на VPS; масштабирование позже происходит быстро, так что можно начать скромно и расти.

Направьте ваш домен на сервер

Создайте запись A (и запись AAAA, если используете IPv6), указывающую имя хоста, такое как cloud.example.com, на публичный IP вашего сервера. Распространение DNS может занять некоторое время. Подтвердите его разрешение перед запросом сертификата:

dig +short cloud.example.com

Путь 1 — Nextcloud с Docker Compose

Контейнеры — самый быстрый способ получить чистую воспроизводимую установку, и они изолируют Nextcloud, его базу данных и кэш от остальной системы. Если контейнеры для вас новинка, наш справочник для начинающих по Docker на VPS сначала охватывает основы. Установите Docker, используя официальный скрипт установки, затем добавьте вашего пользователя в группу docker:

curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
# log out and back in so the group change takes effect

Создайте папку проекта и файл compose.yaml, который запускает Nextcloud с MariaDB и Redis. Приложение привязано к 127.0.0.1:8080, поэтому оно доступно только через обратный прокси, который вы добавите позже, а не напрямую из интернета:

mkdir ~/nextcloud && cd ~/nextcloud
nano compose.yaml
services:
  db:
    image: mariadb:10.11
    restart: always
    command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
    volumes:
      - db:/var/lib/mysql
    environment:
      - MARIADB_ROOT_PASSWORD=change-this-root-password
      - MYSQL_PASSWORD=change-this-db-password
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud

  redis:
    image: redis:alpine
    restart: always

  app:
    image: nextcloud:apache
    restart: always
    ports:
      - "127.0.0.1:8080:80"
    depends_on:
      - db
      - redis
    volumes:
      - nextcloud:/var/www/html
    environment:
      - MYSQL_HOST=db
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
      - MYSQL_PASSWORD=change-this-db-password
      - REDIS_HOST=redis

volumes:
  db:
  nextcloud:

Запустите стек и проверьте, что все три контейнера поднялись:

docker compose up -d
docker compose ps

Nextcloud теперь слушает на localhost:8080. Перейдите к разделу TLS, чтобы безопасно опубликовать его через HTTPS.

Путь 2 — Ручная установка на стеке LAMP

Если вы предпочитаете управлять компонентами самостоятельно, классическая установка Linux, Apache, MariaDB и PHP (LAMP) дает вам полный контроль. Обновите систему и установите веб-сервер, базу данных и расширения PHP, необходимые Nextcloud:

sudo apt update && sudo apt upgrade -y
sudo apt install -y apache2 mariadb-server libapache2-mod-php unzip \
  php php-gd php-mysql php-curl php-mbstring php-intl php-xml \
  php-zip php-bcmath php-gmp php-imagick

Защитите базу данных, затем создайте специальную базу данных и пользователя:

sudo mysql_secure_installation
sudo mysql -u root -p
CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'change-this-db-password';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Скачайте последний релиз в корень веб-сервера и установите права, чтобы Apache мог записывать в него:

cd /var/www
sudo wget https://download.nextcloud.com/server/releases/latest.zip
sudo unzip latest.zip
sudo chown -R www-data:www-data /var/www/nextcloud

Создайте виртуальный хост Apache для вашего домена, включите его вместе с модулями, которые нужны Nextcloud, и перезагрузите:

sudo a2enmod rewrite headers env dir mime
sudo a2ensite nextcloud.conf
sudo systemctl reload apache2

Защитите его с помощью TLS (Let's Encrypt)

Никогда не запускайте Nextcloud по обычному HTTP — логины и файлы будут передаваться без шифрования. Certbot от проекта Let's Encrypt выдает бесплатный доверенный сертификат и автоматически продлевает его. Для ручной установки Apache используйте плагин Apache:

sudo apt install -y certbot python3-certbot-apache
sudo certbot --apache -d cloud.example.com

Для пути Docker поставьте Nginx впереди в качестве обратного прокси, который перенаправляет на 127.0.0.1:8080, а затем позвольте Certbot защитить его:

sudo apt install -y nginx certbot python3-certbot-nginx
sudo certbot --nginx -d cloud.example.com

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

sudo certbot renew --dry-run

Первоначальная настройка

Откройте https://cloud.example.com в браузере. На экране настройки создайте учетную запись администратора и, для ручной установки, введите имя базы данных, пользователя и пароль, которые вы создали ранее (Docker-образ уже подключен к своей базе данных, поэтому этот шаг пропускается). Завершите мастер, и Nextcloud попадет в представление «Файлы». Если вы видите предупреждение, сразу добавьте свой домен в список trusted_domains — для Docker это означает редактирование конфигурации внутри контейнера:

docker compose exec -u www-data app \
  php occ config:system:set trusted_domains 1 --value=cloud.example.com

При ручной установке та же команда выполняется из каталога установки с sudo -u www-data php /var/www/nextcloud/occ .... Командная строка occ — это ваш главный административный инструмент отныне.

Настройка и фоновые задания

Установка по умолчанию работает, но несколько изменений дают реальный эффект. Переключите фоновые задания с AJAX на системный cron, чтобы задачи выполнялись надежно, даже когда никто не вошел в систему. В ручной установке добавьте запись cron для веб-пользователя:

sudo crontab -u www-data -e
# add this line, then save:
*/5 * * * * php -f /var/www/nextcloud/cron.php

Затем установите опцию «Cron» в разделе «Администрирование → Основные настройки». Другие полезные настройки: поднимите PHP memory_limit как минимум до 512M, включите Redis для блокировки файлов и кэширования (уже включено в Compose-файле выше) и установите окно технического обслуживания, чтобы тяжелые задания выполнялись ночью. Встроенные проверки помогут выявить все недостающее:

sudo -u www-data php /var/www/nextcloud/occ status
sudo -u www-data php /var/www/nextcloud/occ setupchecks

Резервные копии, которые можно восстановить

Снапшоты вашего VPS — первая линия защиты — ежедневные резервные копии на Starter Pro, почасовые снапшоты на Business и Enterprise — но хорошей привычкой является отдельная резервная копия на уровне приложения, которую можно восстановить файл за файлом. Переведите Nextcloud в режим обслуживания, сделайте дамп базы данных, архивируйте каталог данных, затем выключите режим обслуживания:

sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --on
mysqldump --single-transaction -u nextcloud -p nextcloud > nextcloud-db.sql
sudo tar -czf nextcloud-data.tar.gz /var/www/nextcloud/data
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --off

Для Docker-установки запустите те же вызовы occ через docker compose exec -u www-data app php occ ... и сделайте резервную копию именованных томов. Храните хотя бы одну копию вне сервера и время от времени тестируйте восстановление — непроверенная резервная копия — это только надежда.

Поддержание работы

Обновляйте Nextcloud через встроенное обновление или веб-интерфейс вскоре после каждого выпуска, поддерживайте операционную систему с патчами с помощью sudo apt upgrade и просматривайте панель «Безопасность и предупреждения» в административной области. С защитой от DDoS, частными сетями и круглосуточным мониторингом на инфраструктурной стороне, а также Let's Encrypt и регулярными обновлениями на стороне приложения, самостоятельный Nextcloud — это действительно надежная альтернатива большим облачным пакетам.

Часто задаваемые вопросы

Сколько оперативной памяти нужно для установки Nextcloud VPS?

Для одного пользователя или семьи, синхронизирующей документы, 4 ГБ ОЗУ и 2 vCPU достаточно. Если вы добавляете библиотеки фото или видео, генерацию превью или несколько активных пользователей, лучше подойдет план Business-class с 8 ГБ ОЗУ и более быстрым NVMe. Enterprise добавляет 16 ГБ и NVMe RAID для больших команд.

Стоит ли выбрать Docker или ручную установку LAMP?

Выберите Docker Compose, если хотите чистый, воспроизводимый стек, который легко перемещать или пересобирать, а ручной путь LAMP — если предпочитаете управлять Apache, PHP и MariaDB напрямую. Оба варианта полностью поддерживаются на VPS с root-доступом; конечный результат — тот же Nextcloud.

Безопасен ли самостоятельный хостинг Nextcloud?

Да, при правильной настройке: обслуживайте всё по HTTPS с сертификатом Let's Encrypt, поддерживайте ОС и Nextcloud в актуальном состоянии, используйте надежные пароли с двухфакторной аутентификацией и полагайтесь на резервное копирование VPS. Поскольку вы размещаете его самостоятельно, ни одна третья сторона не имеет постоянного доступа к вашим файлам.

Нужно ли мне доменное имя?

По сути, да. Вы можете тестировать через raw IP-адрес, но доверенный TLS-сертификат требует домена, а мобильные и десктопные клиенты синхронизации ожидают корректное HTTPS-имя хоста. Достаточно одного недорогого домена с A-записью, указывающей на ваш сервер.

Могу ли я оплатить без кредитной карты?

Да. Оплата на ApexVPS только криптовалютой через OxaPay: принимаются Bitcoin, Ethereum, USDT и более 30 монет — без кредитной карты и банковского счета. Для регистрации нужен только email для отправки данных доступа, плюс опционально заметки, такие как SSH-ключ или предпочитаемая ОС. Не требуется имя, адрес или KYC.

Готовы разместить собственное облако? Посмотрите планы VPS, созданные для самостоятельного хостинга →