Встановлення Nextcloud AIO на VPS: створення особистого хмарного сховища з SSL і Redis
TL;DR
У цьому керівництві розглядається процес розгортання Nextcloud All-in-One (AIO) на віртуальному сервері під керуванням Ubuntu 24.04/26.04. Ми налаштуємо повноцінну екосистему для спільної роботи, що включає автоматичне керування SSL-сертифікатами, високопродуктивне кешування через Redis, офісний пакет Collabora Online та систему резервного копіювання BorgBackup. Nextcloud AIO - це оптимальний вибір для тих, хто цінує приватність даних і хоче отримати функціонал Google Drive або Microsoft 365 на власному обладнанні без складної ручної конфігурації десятків Docker-контейнерів.
- Автоматизація: Встановлення всіх компонентів (DB, Redis, Office, Talk) однією командою Docker.
- Безпека: Автоматичне отримання SSL через Let's Encrypt та вбудований захист від брутфорсу.
- Продуктивність: Використання Redis для кешування транзакцій та прискорення роботи інтерфейсу.
- Масштабованість: Легке підключення зовнішніх сховищ (S3, SMB) та розширення ресурсів VPS.
- Обслуговування: Вбудована панель керування для оновлення всіх компонентів в один клік.
1. Що ми налаштовуємо і навіщо
Nextcloud — це не просто "сховище файлів". Це повноцінна платформа для спільної роботи, яка в 2026 році стала стандартом де-факто для забезпечення цифрового суверенітету. В рамках даного туторіалу ми розгортаємо версію Nextcloud AIO (All-in-One). Це офіційний проект команди Nextcloud, який упаковує всі необхідні сервіси в Docker-контейнери і надає зручний веб-інтерфейс для їх керування.
Чому варто вибрати Self-hosted на VPS замість готових хмарних рішень на зразок Google Drive або Dropbox?
- Приватність: Ваші файли належать тільки вам. Ніякі алгоритми не аналізують ваші фото або документи для навчання нейромереж або таргетингу реклами.
- Вартість: На VPS з диском в 1 ТБ ви можете зберігати необмежену кількість користувачів, в той час як корпоративні тарифи хмар беруть плату за кожного співробітника.
- Функціональність: Ви отримуєте вбудований месенджер (Talk), календар, контакти, менеджер задач (Deck) і повноцінний офісний пакет для редагування .docx і .xlsx прямо в браузері.
- Контроль: Ви самі вирішуєте, де фізично знаходяться ваші дані (локація дата-центру) і які політики безпеки застосовувати.
Використання Nextcloud AIO вирішує головну проблему класичної установки: складність налаштування PHP-FPM, веб-сервера Nginx/Apache, бази даних PostgreSQL і кешування Redis. В AIO всі ці компоненти вже налаштовані на максимальну продуктивність "з коробки".
2. Який VPS-конфіг потрібен під цю задачу
Схема: 2. Який VPS-конфіг потрібен під цю задачу
Nextcloud AIO — досить ресурсоємний додаток, так як він запускає близько 10-12 Docker-контейнерів одночасно (PHP, Postgres, Redis, Caddy, ClamAV, Talk, Collabora та ін.). Для комфортної роботи групи з 5-10 чоловік або активного особистого використання потрібні певні характеристики обладнання.
| Компонент |
Мінімальні вимоги |
Рекомендовані (для команд) |
| Процесор (CPU) |
2 vCPU (Intel Xeon / AMD EPYC) |
4+ vCPU (з високою тактовою частотою) |
| Оперативна пам'ять (RAM) |
4 ГБ (з включеним Swap) |
8 ГБ - 16 ГБ |
| Дискова підсистема |
40 ГБ NVMe/SSD |
200 ГБ+ NVMe (залежить від обсягу даних) |
| Мережа |
100 Мбіт/с |
1 Гбіт/с |
| ОС |
Ubuntu 24.04 LTS |
Ubuntu 24.04 / Debian 12 |
Особливу увагу варто приділити дисковій підсистемі. Оскільки Nextcloud постійно працює з базою даних і дрібними файлами (прев'ю зображень, кеш), використання звичайних HDD вкрай не рекомендується. Тільки NVMe або SSD забезпечать швидке відтворення інтерфейсу.
Для стабільної роботи системи і швидкого доступу до файлів з будь-якої точки світу найкраще вибрати відповідний VPS з локацією в Європі або США, що забезпечує мінімальний пінг до вашої цільової аудиторії.
Якщо ви плануєте зберігати терабайти відеоконтенту або використовувати Nextcloud як корпоративний архів для 50+ співробітників, варто розглянути перехід на dedicated сервер. Це виключить вплив "сусідів" по гіпервізору на продуктивність вашої системи і дозволить підключати додаткові дискові масиви.
3. Підготовка сервера
Схема: 3. Підготовка сервера
Перш ніж приступати до установки Docker, необхідно базово захистити сервер і оновити системні пакети. Ми припускаємо, що у вас є чиста установка Ubuntu 24.04.
Підключіться до сервера по SSH:
ssh root@your_server_ip
Першим ділом оновимо список пакетів і самі пакети до актуальних версій 2026 року:
apt update && apt upgrade -y
Налаштуємо часовий пояс (важливо для коректної роботи логів та планувальника бекапів):
timedatectl set-timezone Europe/Moscow
Створимо користувача з правами sudo, щоб не працювати під root (хороша практика безпеки):
useradd -m -s /bin/bash adminuser
usermod -aG sudo adminuser
passwd adminuser
Налаштуємо базовий брандмауер UFW. Для роботи Nextcloud AIO нам потрібно відкрити порти 80, 443 (HTTP/HTTPS) та 8080 (панель управління AIO):
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw allow 8080/tcp
ufw allow 3478/udp
ufw --force enable
Примітка: Порт 3478 (UDP) необхідний для роботи протоколу STUN/TURN у додатку Nextcloud Talk (відеодзвінки).
4. Встановлення Docker та необхідних утиліт
Схема: 4. Встановлення Docker та необхідних утиліт
Nextcloud AIO повністю базується на Docker. Встановимо актуальну версію Docker Engine з офіційного репозиторію Docker, а не зі стандартних репозиторіїв Ubuntu, щоб мати доступ до останніх оновлень безпеки.
Видалимо старі версії, якщо вони були:
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
Встановимо залежності та додамо GPG-ключ Docker:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
Додамо репозиторій в джерела apt:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
Встановимо Docker Engine та Docker Compose:
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
Перевіримо, що сервіс запущено та додано в автозавантаження:
sudo systemctl enable docker
sudo systemctl start docker
5. Встановлення Nextcloud AIO — покроково
Схема: 5. Встановлення Nextcloud AIO — покроково
На відміну від ручного збирання через docker-compose.yml, проєкт AIO запускається однією командою, яка створює "майстер-контейнер". Цей контейнер в подальшому сам завантажить та налаштує всі інші частини системи.
Запустимо майстер-контейнер:
sudo docker run \
--sig-proxy=false \
--name nextcloud-aio-mastercontainer \
--restart always \
--publish 80:80 \
--publish 8080:8080 \
--publish 443:443 \
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
--volume /var/run/docker.sock:/var/run/docker.sock:ro \
nextcloud/all-in-one:latest
Розберемо параметри команди:
--publish 8080:8080 — відкриває веб-інтерфейс для первинного налаштування.
--volume /var/run/docker.sock:/var/run/docker.sock:ro — дозволяє майстер-контейнеру керувати Docker-демоном хоста для створення інших контейнерів.
--volume nextcloud_aio_mastercontainer — сховище для конфігураційних файлів самої системи AIO.
Після запуску команди зачекайте 1-2 хвилини. В консолі з'явиться повідомлення про те, що майстер-контейнер запущено. Тепер все подальше налаштування буде відбуватися в браузері.
6. Налаштування домену та SSL
Схема: 6. Налаштування домену та SSL
Для коректної роботи Nextcloud (особливо мобільних додатків та синхронізації) вам необхідний домен або піддомен (наприклад, cloud.example.com). SSL-сертифікати будуть отримані автоматично через Let's Encrypt.
Крок 1: Налаштування DNS. Зайдіть в панель управління вашим доменом та створіть A-запис, що вказує на IP-адресу вашого VPS.
| Тип запису |
Ім'я (Хост) |
Значення (IP) |
TTL |
| A |
cloud |
123.123.123.123 (ваш IP) |
Auto / 3600 |
Крок 2: Веб-інтерфейс AIO. Відкрийте в браузері адресу: https://your_server_ip:8080. Ви побачите попередження про самопідписаний сертифікат — це нормально, підтвердьте виняток та продовжіть.
На сторінці ви побачите пароль для входу в панель управління AIO. Обов'язково скопіюйте та збережіть його. Введіть пароль та натисніть "Login".
Крок 3: Перевірка домену. Введіть ваше доменне ім'я (наприклад, cloud.yourdomain.com). Система перевірить, що порти 80 та 443 відкриті і домен вказує на правильний IP. Якщо перевірка пройшла успішно, ви перейдете до вибору компонентів.
7. Первинне налаштування та Redis
Схема: 7. Первинне налаштування та Redis
На сторінці вибору опцій ви можете активувати додаткові сервіси. Для максимальної продуктивності та функціональності рекомендується обрати наступні:
- Nextcloud Talk: Для відеодзвінків та чатів (потребує налаштування високопродуктивного backend, який AIO робить сам).
- Collabora Online: Дозволяє редагувати документи Office прямо в браузері.
- Imaginary: Для швидкої генерації прев'ю зображень.
- ClamAV: Антивірус для перевірки файлів, що завантажуються (потребує +1-2 ГБ RAM).
- Fulltextsearch: Пошук по вмісту документів (потребує значних ресурсів CPU/RAM).
Redis: В Nextcloud AIO Redis включено та налаштовано за замовчуванням. Він використовується для Transactional File Locking. Без Redis при одночасній роботі кількох користувачів з одними й тими ж файлами база даних PostgreSQL могла б блокуватися, що призводило б до помилок 503. Redis зберігає ці блокування в оперативній пам'яті, забезпечуючи миттєвий відгук.
Натисніть кнопку "Download and start containers". Процес скачування образів (близько 3-5 ГБ даних) може зайняти від 5 до 15 хвилин в залежності від швидкості мережі вашого VPS.
Коли всі контейнери перейдуть в статус "Healthy", на екрані з'являться облікові дані адміністратора Nextcloud (логін admin та згенерований пароль). Збережіть їх!
8. Бекапи та обслуговування
Схема: 8. Бекапи та обслуговування
Nextcloud AIO має вбудовану систему резервного копіювання на базі BorgBackup. Це інкрементальне рішення з підтримкою стиснення та шифрування.
В панелі управління AIO (порт 8080) перейдіть в розділ "Backups". У вас є два варіанти:
- Локальний бекап: Вкажіть шлях до змонтованого зовнішнього диску на вашому VPS.
- Віддалений бекап: Змонтуйте зовнішнє сховище (наприклад, через S3FS або Rclone) у файлову систему сервера та вкажіть цей шлях.
Приклад налаштування автоматичного бекапу через cron для самого контейнера AIO не потрібен — в інтерфейсі можна задати розклад. Однак, ми рекомендуємо робити снапшоти всього VPS на рівні провайдера перед кожним великим оновленням Nextcloud.
Оновлення системи: Коли виходить нова версія Nextcloud, в панелі управління 8080 з'явиться кнопка "Update containers". Процес повністю автоматизований: майстер-контейнер зупинить старі версії, скачає нові та проведе міграцію бази даних.
9. Troubleshooting + FAQ
Помилка "Domain does not point to this server"
Ця помилка виникає, якщо DNS-записи ще не оновилися або ви використовуєте Cloudflare з включеним "проксуванням" (помаранчева хмара). Для первинної перевірки та отримання SSL в Cloudflare необхідно тимчасово переключити режим на "DNS Only". Також переконайтеся, що порт 80 відкритий в ufw, так як Let's Encrypt використовує його для валідації (HTTP-01 challenge).
Nextcloud працює повільно, довго вантажаться прев'ю
Перевірте завантаження CPU та RAM командою htop. Якщо оперативна пам'ять заповнена на 90%+, система починає використовувати Swap, що різко знижує швидкість. Рішення: або збільшити RAM на VPS, або вимкнути ресурсомісткі модулі, такі як ClamAV або Fulltextsearch. Також переконайтеся, що в налаштуваннях Nextcloud (розділ "Basic settings") вибрано "Cron" замість "AJAX" для виконання фонових задач.
Який VPS-конфіг мінімально підійде?
Для запуску Nextcloud AIO з базовим набором функцій (без антивіруса та пошуку по тексту) мінімально достатньо 2 vCPU та 4 ГБ оперативної пам'яті. Однак, для комфортної роботи в 2026 році, враховуючи ріст "важкості" веб-інтерфейсів, ми наполегливо рекомендуємо 8 ГБ RAM. Це дозволить системі тримати кеш Redis в пам'яті та швидко обробляти PHP-скрипти.
Що вибрати — VPS або dedicated для цієї задачі?
Якщо об'єм ваших даних не перевищує 1-2 ТБ, сучасний VPS на NVMe дисках буде більш ефективним та дешевим рішенням. Dedicated сервер варто вибирати в двох випадках: якщо вам потрібна абсолютна ізоляція ресурсів з міркувань безпеки або якщо вам потрібні величезні об'єми дискового простору (10 ТБ і вище), які на VPS обходяться занадто дорого.
Як скинути пароль адміністратора Nextcloud?
Якщо ви втратили доступ до аккаунту admin, виконайте команду в консолі сервера:
sudo docker exec --user www-data -it nextcloud-aio-nextcloud ./occ user:resetpassword admin
10. Висновки та наступні кроки
Схема: 10. Висновки та наступні кроки
Ми успішно розгорнули Nextcloud AIO на VPS, забезпечивши безпеку через SSL та високу продуктивність завдяки Redis. Тепер у вас є власна хмара, яка за функціоналом не поступається рішенням від технологічних гігантів, але при цьому повністю підконтрольна вам.
Що робити далі?
- Встановіть мобільні додатки: Скачайте клієнти Nextcloud для iOS/Android для автоматичного вивантаження фотографій з телефона.
- Налаштуйте Desktop Sync: Встановіть клієнт на Windows/macOS/Linux для синхронізації робочих документів.
- Двофакторна аутентифікація (2FA): Обов'язково включіть її в налаштуваннях користувача для захисту від крадіжки пароля.
- Зовнішні сховища: Якщо місце на VPS закінчиться, ви можете підключити об'єктне сховище S3 як зовнішню папку через вбудований плагін "External Storage Support".
Регулярно перевіряйте наявність оновлень в панелі управління на порту 8080 та слідкуйте за вільним місцем на диску. При правильному обслуговуванні ваша особиста хмара прослужить роки, забезпечуючи надійний доступ до ваших цифрових активів.