+7 (495) 107-75-45 Подключение
+7 (495) 107-75-47 Тех. поддержка 24/7
Пример
25.10.2024

Установка NextCloud AIO

Nextcloud AIO (All-In-One): Обзор и Отличия от Других Версий Nextcloud

Что такое Nextcloud?

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

Что такое Nextcloud AIO?

Nextcloud AIO (All-In-One) — это версия Nextcloud, разработанная для упрощения установки и администрирования. В отличие от стандартного способа установки, где нужно настроить веб-сервер, базу данных и другие службы вручную, Nextcloud AIO предоставляет преднастроенные Docker-контейнеры для всех компонентов, необходимых для работы Nextcloud. Это делает процесс установки и обновления простым и быстрым.

Как работает Nextcloud AIO?

Nextcloud AIO использует Docker Compose для автоматической развертки всех компонентов, требующихся для полноценного функционирования сервера Nextcloud. Внутри AIO используются контейнеры, такие как:

  • Nextcloud — основной контейнер с приложением;
  • Redis — для кэширования;
  • MariaDB или PostgreSQL — база данных;
  • Collabora или OnlyOffice — для работы с документами;
  • Webserver (Nginx или Apache) — для предоставления доступа к интерфейсу.

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

Отличия Nextcloud AIO от других версий Nextcloud

  1. Простота установки:
    • Nextcloud AIO разработан для того, чтобы минимизировать технические барьеры при установке, требуя лишь установку Docker и Docker Compose. Для пользователей, не знакомых с настройкой серверов, это существенно упрощает процесс, так как сводит его к запуску одной команды.
    • В стандартной версии Nextcloud пользователю нужно отдельно настраивать сервер, базу данных и другие сервисы, что требует времени и знаний.
  2. Обновления и поддержка:
    • Nextcloud AIO включает автоматизированные обновления, которые применяются ко всем контейнерам. Это значит, что после развертывания сервера администратор может легко обновить Nextcloud и его компоненты, не опасаясь нарушений совместимости.
    • При обычной установке Nextcloud обновления зависят от конкретного сервера, конфигурации и требуют больше усилий для обеспечения совместимости всех компонентов.
  3. Изоляция компонентов:
    • Благодаря использованию контейнеров, Nextcloud AIO обеспечивает изоляцию сервисов, что упрощает управление зависимостями и повышает безопасность. Например, если один из контейнеров выйдет из строя, это не повлияет на работу других компонентов.
    • При стандартной установке все компоненты работают в едином окружении, и сбой одного сервиса может затронуть весь сервер.
  4. Поддержка дополнительных функций:
    • Nextcloud AIO изначально включает опции для интеграции с Collabora или OnlyOffice, что позволяет пользователям редактировать документы прямо в облаке.
    • В обычной версии Nextcloud такие интеграции требуют дополнительных настроек и установок.
  5. Гибкость настройки:
    • Хотя Nextcloud AIO делает процесс установки проще, это решение подходит не для всех, так как контейнерная структура ограничивает возможности для индивидуальной настройки. Если организация требует нестандартной конфигурации, например, с использованием специфических баз данных или настроек веб-сервера, лучше выбрать стандартную установку Nextcloud.
    • Стандартная версия Nextcloud, напротив, позволяет более гибко настраивать каждый компонент, но это потребует от администратора дополнительных знаний.

Когда лучше использовать Nextcloud AIO?

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

  • Требуется развертывание сервера в короткие сроки;
  • Отсутствует необходимость в глубокой кастомизации;
  • Администратор предпочитает минимизировать количество обновлений и технического обслуживания.

Установка:

И так, все готово для установки. У нас подготовлен сервер с RockyLinux с установленным Docker. Я почитал документацию к Nextcloud aio и принял решение немного переписать запуск установки и сделать файл docker0composer.yml. У меня получился вот такой:

# version: '3.8'

volumes:
  nextcloud_aio_mastercontainer:
    name: nextcloud_aio_mastercontainer

services:
  nextcloud:
    image: nextcloud/all-in-one:latest
    restart: unless-stopped
    container_name: nextcloud-aio-mastercontainer
    volumes:
      - nextcloud_aio_mastercontainer:/mnt/docker-aio-config
      - /var/run/docker.sock:/var/run/docker.sock:ro
    ports:
      - 8080:8080 # change the port on the left side if it's already in use on your host system.
    environment:
      - APACHE_PORT=11000  # change this port number if 11000 is already in use on your host system.
      - APACHE_DISABLE_REWRITE_IP=1
      - NEXTCLOUD_TRUSTED_DOMAINS=cloud.pupkin.ru 192.168.1.130 # Your domain name + proxy host IP
      - TRUSTED_PROXIES=192.168.1.130 # proxy host IP
      - NEXTCLOUD_DATADIR=/home/mike/nextcloud_data
      - NEXTCLOUD_UPLOAD_LIMIT=100G
      - NEXTCLOUD_MAX_TIME=3600
      - NEXTCLOUD_MEMORY_LIMIT=2500M

Немного поясню:

# version: ‘3.8’ закоментирован, так как новая версия docker при сборке его отключила
На всякий случай, я указал каталог в котором NextCloud будет помещать данные NEXTCLOUD_DATADIR=/home/mike/nextcloud_data
Далее я указываю ip Nginx Proxy Manager – мы ранее его устанавливали
Лимит загрузки файла в 100 Гб
Остальные параметры нужны для нормальной работы NextCloud

Переходим на пользователя Mike. Ранее мы его создавали и теперь будем работать от его имени, создаем в его домашнем каталоге, еще один каталог и называем его NectCloud.
Создаем файл docker-composer.yml и вставляем содержимое. Запускаем установку:

docker compose up -d && docker composer log -f

Установка будет идти довольно долго. Открываем броузер и набираем ip адрес нашего сервера и порт 8080

установка NextCloud

Сохраните пароль. Он потом может вам пригодиться. Далее появится страница, где вы пропишете url вашего сервера. Например cloud.pupkin.ru

Далее подключим домен к Nginx Proxy  Manager

Подключим домен

Выпустим сертификат:

Выпускаем сертификат

Во вкладке Advansed вставим:

client_body_buffer_size 512k;
proxy_read_timeout 86400s;
client_max_body_size 0;

И должны получить следующее:

Вид подключенных доменов

Выберите приложения которые вам необходимо установить. Я выбрал все. И начните установку.
После того, как все сервисы станут зелеными, перейдите по вашему url и введите admin и пароль, который я просил вас сохранить. Далее он вам так же пригодится.

Заключение

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