Якщо ви користуєтесь хмарою Google для зберігання файлів, синхронізації фотографій, календаря чи будь-яких інших даних, але хочете замінити її на щось Open Source, то вам знадобиться NextCloud. Це вільне рішення для організації приватної хмари, яку можна розмістити на власному сервері.
NextCloud може багато з того, що може хмара від Google. Тут є застосунок для Android, редактор документів, нотатки, галерея, автоматична синхронізація між пристроями та багато іншого. У цій статті ми розглянемо як виконується встановлення та налаштування NextCloud за допомогою Docker для роботи в локальній мережі, а також як користуватися основними можливостями програми.
Зміст
- Для чого можна використовувати NextCloud
- Встановлення NextCloud за допомогою Docker
- Початкове налаштування NextCloud
- Веб-інтерфейс та програми
- Налаштування клієнта для Android
- Налаштування клієнта для ПК
- Вирішення проблем
- Висновки
Для чого можна використовувати NextCloud
NextCloud (раніше OwnCloud) - це не просто сервер для зберігання файлів. Це ціла платформа для синхронізації різної інформації між вашими пристроями. Причому NextCloud має модульну архітектуру, а це означає, що встановивши додаткові модулі, які тут називаються додатками, ви зможете додати ще більше функцій. Ось що ще ви можете зробити за допомогою NextCloud:
- Синхронізувати нотатки
- Синхронізувати календар
- Синхронізувати контакти
- Переглядати галерею фото віддалено
- Редагувати файли офісних форматів, таких як документи, таблиці та презентації
- Відтворювати аудіо та відео файли
- Зберігати та синхронізувати паролі
І якщо ви зробите ваш сервер NextCloud доступним через мережу Інтернет, то зможете також надавати спільний доступ до потрібних файлів іншим людям.
Встановлення NextCloud за допомогою Docker
Існує декілька способів встановлення NextCloud. Ви можете скористатися Docker контейнером NextCloud All-in-One, Snap, налаштувати все вручну або використати офіційний образ nextcloud для Docker. Але все це потребує часу та навичок.
Найпростіший спосіб розгорнути Nextcloud у Docker Compose, щоб ознайомитися з його можливостями та швидко почати використовувати - це використати Docker образ від LinuxServer. Він має свої проблеми, але налаштовується дуже швидко.
Створіть папку проєкту, а в ній файл docker-compose.yaml з наступним вмістом:
---
services:
nextcloud:
image: lscr.io/linuxserver/nextcloud:latest
container_name: nextcloud
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
volumes:
- ./data/nextcloud/config:/config
- ./data/data:/data
ports:
- 443:443
restart: unless-stopped
Тут PUID та PGUID мають збігатися з ID користувача в системі, щоб у вас потім був доступ з файлового менеджера до файлів, завантажених у NextCloud. Також ми монтуємо папку /config та /data в контейнер з конфігураційними файлами NextCloud та завантаженими файлами відповідно для того, щоб усі дані знаходились у тій же папці, що й docker-compose.yaml. Тоді у разі чого ви зможете взяти все та перенести на інший комп'ютер або сервер, просто скопіювавши папку.
І майже все. Тепер виконайте наступну команду для запуску в папці з файлом docker-compose.yaml:
docker compose up
Це найпростіший спосіб отримати легко переносний Nextcloud з підтримкою SSL без необхідності налаштовувати все вручну.
Початкове налаштування NextCloud
Після того як контейнер буде запущено, можна відкрити адресу додатка у браузері. Для того щоб інсталятор налаштував дозволені домени коректно, слід використовувати IP-адресу, якою ви плануєте користуватися в майбутньому. Для того щоб потім отримати доступ до сервера з локальної мережі, потрібно використовувати IP комп'ютера, на якому знаходиться Nextcloud. Подивитися IP можна командою:
ip -br a
У моєму випадку це https://192.168.1.111. При першому зверненні браузер попередить, що з'єднання небезпечне, оскільки використовується самопідписаний сертифікат. Потрібно клацнути по кнопці Advanced, а потім Accept the Risk and Continue:
При першому вході NextCloud запропонує вам створити обліковий запис адміністратора:
Потім можна встановити рекомендовані додатки. Цей крок можна пропустити, тому що встановлення додатків ми розглянемо нижче:
Далі інсталлятор перенаправить вас одразу до панелі керування. Якщо цього не сталося, вам потрібно буде авторизуватися, використовуючи щойно створений обліковий запис:
Після цього перед вами відкриється дашборд програми. Тут будуть останні створені файли, а саме файли прикладів, які за замовчуванням знаходяться у сховищі NextCloud:
При початковому встановленні програма згенерує конфігураційний файл за адресою data/nextcloud/config/www/nextcloud/config/config.php. Якщо вам у майбутньому потрібно буде змінювати налаштування Nextcloud, це робиться тут. Наприклад, при додаванні нових доменів їх потрібно додати до масиву trusted_domains. Ці рядки дозволяють підключення до Nextcloud як використовуючи localhost, так і IP адресу комп'ютера в якості домену:
'trusted_domains' =>
array (
0 => '192.168.1.111',
1 => 'localhost'
),
'dbtype' => 'sqlite3',
А тепер перейдемо до використання самого веб-інтерфейсу.
Веб-інтерфейс та програми
У лівій частині верхнього меню веб-інтерфейсу розташовані ярлики швидкого доступу, за допомогою яких можна перейти до перегляду файлів (Files), а також відкрити встановлені програми, за замовчуванням тут є Photos (галерея фото) та Activity (історія дій). Сюди ж будуть додаватись ярлики інших додатків:
У правій частині розташоване меню профілю, за допомогою якого можна налаштовувати NextCloud, а також встановлювати та налаштовувати додаткові програми:
Ось так виглядає перегляд файлів. Тут можна завантажувати файли з комп'ютера за допомогою кнопки New, а також керувати файлами за допомогою контекстного меню:
При перегляді деталей про файл можна створити для нього публічне посилання або поділитися файлом з користувачем через Email. Але для того щоб останнє запрацювало необхідно щоб була налаштована відправка електронної пошти:
А ось так виглядає галерея фото. Тут такий самий таймлайн фотографій як у галереї вашого смартфону:
Встановлення додатків
Окрім додатків, встановлених за замовчуванням, ви можете встановити інші додатки з магазину NextCloud. Їх там дуже багато. Для перегляду встановлених додатків клікніть по іконці профілю та відкрийте Apps:
Тут перейдіть до розділу Your Apps.
Тут ви можете бачити всі встановлені додатки. Їх тут вже близько 20-ти, оскільки NextCloud має модульну архітектуру. Доступні для встановлення додатки можна знайти в розділах нижче: Featured Apps, AI тощо. У першому розділі знаходяться відібрані програми, які люди найчастіше встановлюють:
Наприклад, можна встановити: Calendar, Notes, Contacts, Music. Для цього достатньо натиснути Download and Install навпроти програми. У верхній частині екрана є також пошук, за допомогою якого ви можете знайти потрібний додаток за назвою:
Встановлення відбувається практично миттєво, і після цього програми з'являться на вкладці Active Apps, і для багатьох у верхньому меню з'являться ярлики:
Зверніть увагу, що не всі додатки додають ярлик на верхню панель. Для деяких просто з'являється пункт меню в налаштуваннях.
Вимкнення додатків
Завдяки модульній архітектурі NextCloud багато непотрібних функцій можна вимкнути. Для вимкнення додатку натисніть кнопку Disable на вкладці Active Apps. Наприклад, можна вимкнути Dashboard, і тоді при відкритті NextСloud завжди буде відкриватись перегляд файлів.
Вимкнені додатки знаходяться в розділі Disabled Apps. Там їх можна повністю видалити за допомогою кнопки Remove:
Налаштування клієнта для Android
Це все не було б таким цікавим, якби не було можливості синхронізувати свої дані з інших пристроїв. Давайте далі розглянемо як налаштувати синхронізацію з Android.
Встановлення та підключення
Завантажити програму можна з Google Play або F-Droid. Встановіть програму з джерела, яке вам більше підходить:
Після запуску програми потрібно натиснути кнопку Login. Після цього потрібно вказати URL сервера, без префіксу https. Якщо комп'ютер знаходиться в локальній мережі, то потрібно вказати IP комп'ютера, якщо на хостингу, то домен:
Якщо ви використовуєте самопідписаний сертифікат, то отримаєте ось таке попередження, достатньо натиснути yes:
Програма перенаправить вас у браузер, де потрібно авторизуватися та натиснути кнопку Grant Access для отримання токена авторизації, який потім і буде використовувати програма для доступу до вашого сервера.
Після повернення до програми ви отримаєте сповіщення, що підключення пройшло успішно:
Далі залишиться надати програмі доступ до файлів на пристрої. Після цього ви побачите список файлів та папок у вашій хмарі:
Звісно, у цьому прикладі завантаження файлів виконується тільки коли телефон і сервер підключені до однієї локальної мережі.
Завантаження файлів у хмару
Щоб синхронізувати папку, зробіть свайп зліва направо, відкривши бічну панель програми. Тут потрібно відкрити Settings у самому низу. В налаштуваннях прогорніть до пункту Sync та оберіть Auto Upload.
На наступному екрані можна обрати папки, які будуть завантажуватися на сервер. Також за потреби можна налаштувати як і куди завантажувати обрану папку, натиснувши кнопку Configure у контекстному меню для папки:
Для вибору папки достатньо клікнути по хмарі біля її назви. Можливо програма попросить дозволити їй працювати у фоні для того, щоб завантаження виконувалось навіть коли програму закрито.
За замовчуванням файли будуть завантажуватися до папки InstantUpload в кореневій папці NextCloud. Ця функція відповідає за завантаження файлів на сервер. Але також можна і синхронізувати файли з сервера, якщо в цьому є потреба.
Синхронізація папок з хмарою
Крім завантаження файлів у хмару, можна налаштувати синхронізацію локальних папок із хмарою. Для цього потрібно відкрити контекстне меню для папки, наприклад, Documents та обрати Details. Потім на вкладці Activities треба увімкнути прапорець Sync:
Після цього біля значка папки з'явиться зелена відмітка:
І це все. Ця папка також з'явиться в налаштуваннях, у розділі Internal Two way Sync, де можна буде налаштувати інтервал синхронізації.
Синхронізація нотаток
Якщо ви хочете синхронізувати нотатки, для цього існує окремий застосунок під назвою Notes для Android. Але він працюватиме, тільки якщо ви попередньо встановили додаток NextCloud Notes у веб-інтерфейсі. Android-застосунок можна встановити з F-Droid або Google Play. Застосунок підхопить обліковий запис, налаштований в основному застосунку Nextcloud, тому ви можете відкривати його та керувати нотатками:
Кожна нотатка - звичайний файл у форматі Markdown. Всі нотатки будуть автоматично синхронізовані на сервер:
А також у застосунку Notes у веб-інтерфейсі:
Крім нотаток з телефону можна синхронізувати календар та контакти. Для цього використовується застосунок DavX5, який можна завантажити безкоштовно з F-Droid. Але про це детально розповідати в цій статті вже не буду.
Налаштування клієнта для ПК
Якщо ви хочете все те саме на ПК, це також можливо. Для цього існує Nextcloud клієнт, розроблений з використанням бібліотеки Qt. За його допомогою ви можете синхронізувати файли з комп'ютера в NextCloud, а також завантажувати файли з сервера. Для встановлення програми в Fedora використовуйте команду:
sudo dnf install nextcloud-client
В Ubuntu буде необхідно скористатися PPA:
sudo add-apt-repository ppa:nextcloud-devs/client
sudo apt install nextcloud-client
Після запуску, як і в програмі для Android, тут вам потрібно буде авторизуватися. Спочатку натисніть кнопку Login:
Спочатку потрібно ввести URL сервера:
Потім необхідно авторизуватися в браузері та надати доступ до програми. Я не буду описувати процес детально, оскільки тут все точно так само. Після цього вам потрібно буде налаштувати куди буде виконуватися синхронізація, а також які папки з сервера потрібно синхронізувати:
Тут ви можете натиснути кнопку Choose different folder для того щоб обрати папку, в яку будуть синхронізуватися файли. А для того щоб синхронізувати не все, а тільки потрібне, натисніть Choose what to sync та оберіть необхідні каталоги.
І власне все. Після цього клієнт буде працювати у фоновому режимі та синхронізувати файли за необхідності.
Вирішення проблем
Як зазвичай, якщо виникають проблеми з програмним забезпеченням, необхідно дивитись логи. В даній конфігурації логи веб-сервера можна переглянути такими командами:
tail -f data/nextcloud/config/log/nginx/access.log
tail -f data/nextcloud/config/log/nginx/error.log
А PHP:
tail -f data/nextcloud/config/log/php/error.log
Висновки
У цій статті було показано просту установку та налаштування NextCloud. Тут можна зробити ще багато чого, наприклад, синхронізувати контакти, календар, налаштувати доступ до сервера з інтернету, підключити підтримку відправлення пошти, щоб користувачі, з якими ви поділилися файлами, могли отримати до них доступ, встановити офіс тощо.
І звичайно, такий спосіб встановлення не є ідеальним, оскільки бажано використовувати повноцінні SSL-сертифікати, домен, а також окрему базу даних замість SQLite. Але стаття вийшла і так великою. Сподіваюся, у вас склалося більш повне враження про те, що таке Nextcloud, а також як його можна використовувати.






































