Установка 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
- Простота установки:
- Nextcloud AIO разработан для того, чтобы минимизировать технические барьеры при установке, требуя лишь установку Docker и Docker Compose. Для пользователей, не знакомых с настройкой серверов, это существенно упрощает процесс, так как сводит его к запуску одной команды.
- В стандартной версии Nextcloud пользователю нужно отдельно настраивать сервер, базу данных и другие сервисы, что требует времени и знаний.
- Обновления и поддержка:
- Nextcloud AIO включает автоматизированные обновления, которые применяются ко всем контейнерам. Это значит, что после развертывания сервера администратор может легко обновить Nextcloud и его компоненты, не опасаясь нарушений совместимости.
- При обычной установке Nextcloud обновления зависят от конкретного сервера, конфигурации и требуют больше усилий для обеспечения совместимости всех компонентов.
- Изоляция компонентов:
- Благодаря использованию контейнеров, Nextcloud AIO обеспечивает изоляцию сервисов, что упрощает управление зависимостями и повышает безопасность. Например, если один из контейнеров выйдет из строя, это не повлияет на работу других компонентов.
- При стандартной установке все компоненты работают в едином окружении, и сбой одного сервиса может затронуть весь сервер.
- Поддержка дополнительных функций:
- Nextcloud AIO изначально включает опции для интеграции с Collabora или OnlyOffice, что позволяет пользователям редактировать документы прямо в облаке.
- В обычной версии Nextcloud такие интеграции требуют дополнительных настроек и установок.
- Гибкость настройки:
- Хотя 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
Сохраните пароль. Он потом может вам пригодиться. Далее появится страница, где вы пропишете 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, включая редактирование документов и интеграцию с популярными офисными приложениями, при этом требуя минимальных усилий для администрирования и обновлений.