Проверено AppsHome Активен

Nextcloud

Собственное облако для хранения и синхронизации файлов, фотографий, календарей, контактов и совместной работы

Nextcloud — собственное облако для файлов, фотографий и совместной работы

Google Drive, Dropbox, OneDrive и iCloud очень удобны: установил приложение — и файлы доступны на компьютере, смартфоне и планшете.

Но сами данные при этом находятся на серверах сторонней компании.

Nextcloud предлагает другой подход: облако остаётся таким же удобным, но сервер принадлежит вам.

Это может быть домашний мини-ПК, NAS, виртуальная машина, VPS или полноценный сервер.

На нём хранится Nextcloud, а ваши устройства подключаются к нему через браузер или приложения.

Условно схема выглядит так:

Ноутбук ─────────┐
Смартфон ────────┤
Планшет ─────────┼──► Nextcloud ───► ваши диски
Рабочий ПК ──────┤
Браузер ─────────┘

Главное отличие от обычного публичного облака заключается в том, что вы сами решаете, где физически находятся данные и кто имеет к ним доступ.

Nextcloud позиционируется как open-source платформа для синхронизации и совместного использования данных на серверах, которые контролирует сам пользователь или организация.

Это намного больше, чем сетевой диск

В самом простом варианте Nextcloud можно использовать как личную замену Google Drive или Dropbox.

Загрузили файл на компьютер — через некоторое время он появился на телефоне и на сервере.

Но возможности платформы этим не заканчиваются.

Через приложения Nextcloud можно добавить работу с:

Файлами
Фотографиями
Календарями
Контактами
Задачами
Заметками
Почтой
Видеозвонками
Документами
Совместными папками

В результате Nextcloud постепенно превращается из обычного файлового хранилища в собственное рабочее пространство.

Синхронизация между устройствами

Для компьютеров существует Nextcloud Desktop Client.

Можно выбрать локальную папку:

C:\Users\User\Nextcloud

или, например:

/home/user/Nextcloud

и синхронизировать её с сервером.

Изменения автоматически передаются между устройствами.

Есть также мобильные приложения для Android и iOS, поэтому фотографии и документы доступны с телефона.

Доступ через браузер

Устанавливать клиент необязательно.

Nextcloud имеет полноценный веб-интерфейс:

https://cloud.example.com

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

Интерфейс поддерживает выбор языка пользователем, а у Nextcloud существует русская локализация и русскоязычная документация.

Общий доступ к файлам

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

Например:

Фотографии отпуска
        │
        └── Ссылка
              │
              └── Другой пользователь

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

Это удобно не только дома.

Один сервер можно использовать для семьи, небольшой команды или организации.

Где на самом деле лежат файлы

Сам Nextcloud — это приложение.

Данные хранятся на дисках вашего сервера.

Например:

Server
│
├── NVMe
│   ├── Nextcloud
│   ├── MariaDB
│   └── Redis
│
└── HDD / SSD
    └── пользовательские файлы

Поэтому объём собственного облака определяется прежде всего размером ваших накопителей, а не тарифом облачного провайдера.

Установили 4 ТБ — потенциально получили несколько терабайт собственного пространства.

Но здесь появляется и ответственность владельца: отказ диска может означать потерю данных.

Поэтому Nextcloud обязательно должен иметь нормальную систему резервного копирования.

Nextcloud и Docker

Nextcloud отлично подходит для контейнерного развёртывания.

Существует официальный Docker Image с вариантами Apache и FPM. Текущий официальный образ предоставляет в том числе ветку 34.0.4, а образы публикуются для amd64 и ARM-архитектур.

Для AppsHome мы будем использовать примерно такую архитектуру:

Docker
│
├── Nextcloud
├── MariaDB
├── Redis
└── Cron

И управлять ей через один compose.yaml.

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

Какую базу данных использовать

Для полноценной установки Nextcloud лучше использовать отдельную базу данных.

Поддерживаются, в частности:

MariaDB
MySQL
PostgreSQL

SQLite тоже существует, но официальная документация рекомендует его только для тестовых или очень небольших установок. Для обычного сервера Nextcloud рекомендует MariaDB или PostgreSQL.

В наших Docker-инструкциях мы будем преимущественно использовать MariaDB.

Зачем нужен Redis

Nextcloud может работать и без Redis, но для постоянного сервера его стоит добавить.

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

Поэтому наша типовая установка будет выглядеть не как:

Nextcloud

а как:

Nextcloud
   │
   ├── MariaDB
   ├── Redis
   └── Cron

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

Сколько ресурсов нужно Nextcloud

Здесь многое зависит от количества пользователей и установленных приложений.

Официальная документация указывает минимум 128 МБ RAM на PHP-процесс и рекомендует не менее 512 МБ на процесс, поэтому назвать одно универсальное число памяти для всего сервера невозможно.

Для AppsHome мы бы ориентировались на практический минимум:

2 ядра CPU
2 ГБ RAM
SSD

для небольшой домашней установки.

Комфортнее:

4 ядра
4–8 ГБ RAM
SSD/NVMe

Особенно если одновременно используются Preview Generator, Photos, Office, Talk и другие приложения.

Для хранения большого количества фотографий производительность дисковой системы часто становится важнее ещё пары процессорных ядер.

Nextcloud на Raspberry Pi

Nextcloud может работать и на ARM, поэтому небольшой домашний сервер можно построить даже на Raspberry Pi.

Однако для большой библиотеки фотографий, нескольких пользователей и дополнительных приложений я бы предпочёл энергоэффективный x86 Mini PC.

Например:

Intel N100/N150
16 ГБ RAM
500 ГБ NVMe
+
HDD/SSD для файлов

Такой сервер даст значительно больше запаса для дальнейшего развития.

Nextcloud Office

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

Тогда документы можно открывать и редактировать прямо через веб-интерфейс.

Современный Nextcloud Hub объединяет файловое хранилище с инструментами совместной работы, коммуникации и офисными приложениями.

То есть собственный сервер постепенно может заменить сразу несколько облачных сервисов.

Важность резервной копии

Это главный момент, который легко забыть после успешной установки.

Если Nextcloud стал основным местом хранения семейных фотографий и документов, сам сервер не является резервной копией.

Нужно сохранять как минимум:

пользовательские файлы
конфигурацию Nextcloud
базу данных
Compose-файл

и желательно держать одну копию физически отдельно от сервера.

Если на основном сервере выйдет из строя накопитель, резервная копия должна продолжить существовать.

Преимущества и недостатки

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

Цена этого контроля — необходимость самостоятельно заниматься сервером.

Нужно следить за:

обновлениями
резервными копиями
HTTPS
базой данных
дисками
свободным местом
безопасностью

Поэтому Nextcloud сложнее Google Drive, где инфраструктурой занимается кто-то другой.

Но именно поэтому он и интересен для self-hosting.

Nextcloud AIO или обычный Docker Compose

У Nextcloud существует также Nextcloud All-in-One (AIO).

Это официальный комплексный способ контейнерной установки, который автоматизирует большую часть компонентов. При этом страница официального Docker Image отдельно указывает, что обычный community Docker image рассчитан скорее на опытных пользователей, а для быстрого развёртывания полного набора возможностей рекомендуется AIO.

На AppsHome мы рассмотрим оба способа.

Для пользователя, который хочет максимально простой готовый Nextcloud:

Nextcloud AIO

Для тех, кто хочет полностью контролировать контейнеры:

Nextcloud
+
MariaDB
+
Redis
+
Cron
+
Docker Compose

Мне второй вариант особенно интересен для нас, потому что он хорошо показывает устройство системы и позволяет самостоятельно контролировать каждую её часть.

Наша оценка

AppsHome: 4.8 / 5

Nextcloud — один из самых функциональных self-hosted-проектов для собственного сервера.

Он особенно интересен, если хочется заменить сразу несколько облачных сервисов и хранить данные на собственном оборудовании.

При этом Nextcloud нельзя назвать приложением из категории «запустил один контейнер и забыл». Хорошая установка требует базы данных, резервного копирования, регулярных обновлений и правильно настроенного доступа извне.

Для домашнего сервера это не недостаток, а скорее следующий уровень после простых приложений вроде Uptime Kuma или Vaultwarden.