Установка Nextcloud с Docker Compose
Данная статья предназначена для тех, кто искал подробное и понятное руководство о том, как установить Nextcloud с Docker Compose.
Nextcloud - это аналог Dropbox, который можно установить на собственном сервере и сделать облако для хранения файлов - фотографий, видео и любых других. Приложение можно использовать для совместной работы и конфиденциального обмена файлами, настраивая уровни доступа для каждого пользователя. Также с помощью отдельного мобильного приложения NextCloud Talk можно также совершать голосовые и видеозвонки.
В этом руководстве мы будем рассматривать тот случай, когда у вас уже есть сервер с установленной на нем операционной системой Ubuntu Server 20.04 LTS.
Подробно о том, как установить Ubuntu Server 20.04 LTS, вы можете прочитать в моем руководстве “Установка Ubuntu Server 20.04 LTS”.
Также на сервере должен быть установлен Docker Engine и Docker Compose.
Узнать о том, как установить Docker Engine на Ubuntu Server, вы можете, прочитав “Установка Docker Engine и Docker Compose на Ubuntu Server”.
Кроме того, на сервер должен быть установлен OpenSSH, а также открыт 22 порт, чтобы иметь возможность подключаться к серверу по протоколу SSH.
Для установки OpenSSH на сервер вы можете воспользоваться командой:
sudo apt install openssh-server
Если вы планируете подключиться к серверу, используя операционную систему Windows, то можете воспользоваться PuTTY или MobaXterm.
В данном руководстве рассматривается подключение к серверу при помощи терминального эмулятора iTerm2, установленного на операционную систему macOS.
Обратите внимание, вам потребуется открыть следующие порты TCP для доступа к вашему серверу:
- TCP порт 80 - для получения бесплатного криптографического сертификата через центр сертификации Let’s Encrypt.
- TCP порт 443 - для доступа к веб-интерфейсу Nextcloud.
Подключаемся к серверу, на который планируется установить Nextcloud.
Теперь нужно создать конфигурационный файл YAML, который будет содержать все необходимые условия для работы Nextcloud.
Создадим конфигурационный файл YAML, воспользовавшись текстовым редактором, с помощью команды:
vim nextcloud-traefik-letsencrypt-docker-compose.yml
Нажимаем на кнопку “i”, чтобы перейти в режим редактирования, затем вставляем следующую конфигурацию для работы Nextcloud.
Далее вам необходимо внести изменения в конфигурацию, чтобы содержимое файла соответствовало вашим условиям. Параметры, которые требуется проверить или в которые нужно внести изменения имеют пометку “(replace with yours)”.
В данном руководстве для доступа к Nextcloud из сети Интернет будет использоваться субдомен nextcloud.heyvaldemar.net. Вам нужно будет указать ваш домен или субдомен, по которому ваш Nextcloud будет доступен из сети Интернет.
Обратите внимание, в данном руководстве в качестве системы для управления базами данных будет использоваться PostgreSQL, а в качестве reverse proxy - Traefik.
В параметре “traefik.http.middlewares.authtraefik.basicauth.users” необходимо указать имя пользователя и хэш пароля для доступа к панели управления Traefik.
Обратите внимание, для получения хэша пароля можно воспользоваться данным сервисом.
Теперь нажмите на кнопку “Esc”, чтобы выйти из режима редактирования, а затем введите “:x” и нажмите на кнопку “Enter”, чтобы сохранить изменения и выйти из редактора.
Теперь запустим Nextcloud с помощью команды:
docker compose -f nextcloud-traefik-letsencrypt-docker-compose.yml -p nextcloud up -d
С рабочей станции переходим по ссылке https://nextcloud.heyvaldemar.net, где nextcloud.heyvaldemar.net - имя моего сервера. Соответственно, вам необходимо указать имя вашего сервера Nextcloud.
Указываем логин, который вы указали ранее в конфигурационном файле YAML, в переменной “NEXTCLOUD_ADMIN_USER”.
Далее указываем пароль, который вы указали ранее в конфигурационном файле YAML, в переменной “NEXTCLOUD_ADMIN_PASSWORD”.
Нажимаем на кнопку “Log in”.
Добро пожаловать в панель управления Nextcloud.
Для доступа к панели управления Traefik необходимо с рабочей станции перейти по ссылке https://traefik.nextcloud.heyvaldemar.net, где traefik.nextcloud.heyvaldemar.net — имя моего сервера. Соответственно, вам необходимо указать имя вашего сервера с установленным Traefik.
Указываем имя пользователя и пароль, заданный ранее в конфигурационном файле YAML, и нажимаем на кнопку “OK”.
Добро пожаловать в панель управления Traefik.