Установка домашнего сервера NextCloud в Hyper-V для чайников

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

Вы скажете, что на Пикабу уже есть мануалы по NextCloud и я с Вами соглашусь, но фишка в том, что способ установки, который я опишу ниже, существенно проще и реально доступен для «чайников». В данном мануале мы будем устанавливать NextCloud через снапы, что намного проще для неподготовленных пользователей.

Теперь отвечу на вопрос, почему через Hyper-V? Всё просто. У большинства дома только один ПК и как правило, он на Windows. Установка через Hyper-V позволяет использовать один ПК одновременно на Windows и на Linux, причем, если машина довольно мощная, то и виртуалок можно запустить приличное количество. Лично мне один круглосуточно работающий ПК нужен по работе и запилить такой домашний сервер дома, куда как дешевле, чем арендовать VPS/VDS, с учетом того, что у меня довольно шустрый канал в 500 мбит/с.

Да, можно купить OneDrive за копейки, что я раньше и делал, но теперь такие аккаунты банятся через месяц.

Пожалуй начнем с Ubuntu.

Ставить будем на серверную версию Ubuntu, как наиболее популярную у обычных юзверей, хотя я обычно предпочитаю CentOS на VPS/VDS.

Качаем актуальную Ubuntu Server:

https://ubuntu.com/download/server

Ставите как Вам удобно. Если у Вас есть отдельный ПК, на котором Вы хотите использовать NextCloud, то в принципе, текст про Hyper-V ниже, Вы можете пропустить.

Мне лично нужно повесить NextCloud на круглосуточно работающий на Windows 11 Morefine s600, поэтому я буду использовать Hyper-V.

Hyper-V

Для установки Hyper-V нужна Windows 10/11 Корпоративная, Pro или для образовательных учреждений.

Чтобы не забивать лишней информацией пост, ссылку о том, как включить Hyper-V, можно прочить ниже:

https://learn.microsoft.com/ru-ru/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v

Для Hyper-V можно использовать образ виртуального диска или полноценный HDD, но для этого его нужно правильно приготовить :)

Заходим в Управление дисками и с помощью правой кнопки мыши делаем его Вне сети, иначе Hyper-V его не увидит.

Установка домашнего сервера NextCloud в Hyper-V для чайников Начинающий, Nextcloud, Своими руками, Облачное хранилище, Облачный сервис, Ubuntu, Сервер, Длиннопост

Теперь уже можно идти в Диспетчер Hyper-V, где до установки Ubuntu, нужно зайти в Диспетчер виртуальных коммутаторов.

Установка домашнего сервера NextCloud в Hyper-V для чайников Начинающий, Nextcloud, Своими руками, Облачное хранилище, Облачный сервис, Ubuntu, Сервер, Длиннопост

Здесь указываем нашу физический сетевой адаптер и называем его как Вам удобно.

Установка домашнего сервера NextCloud в Hyper-V для чайников Начинающий, Nextcloud, Своими руками, Облачное хранилище, Облачный сервис, Ubuntu, Сервер, Длиннопост

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

ВАЖНО! Внизу слева, где написано Сеть, выбираете ранее указанный в настройках сетевой адаптер. У меня он называется Nextcloud.

Установка домашнего сервера NextCloud в Hyper-V для чайников Начинающий, Nextcloud, Своими руками, Облачное хранилище, Облачный сервис, Ubuntu, Сервер, Длиннопост

Отключаем контрольные точки в Параметрах виртуальной машины.

Виртуальная машина создана - жмем "Подключиться" и устанавливаем Ubuntu.

Установка домашнего сервера NextCloud в Hyper-V для чайников Начинающий, Nextcloud, Своими руками, Облачное хранилище, Облачный сервис, Ubuntu, Сервер, Длиннопост

Крайне рекомендую использовать язык по умолчанию - английский.

Установка домашнего сервера NextCloud в Hyper-V для чайников Начинающий, Nextcloud, Своими руками, Облачное хранилище, Облачный сервис, Ubuntu, Сервер, Длиннопост

В процессе установки обязательно запомните свой логин и пароль, а также локальный IP. По этому адресу будет Ваш сервер NrxtCloud. В моём случае это 192.168.0.74.

На этом с Hyper-V мы закончили и далее переходим к установке NextCloud.

Установка домашнего сервера NextCloud в Hyper-V для чайников Начинающий, Nextcloud, Своими руками, Облачное хранилище, Облачный сервис, Ubuntu, Сервер, Длиннопост

Далее Вы можете выполнять команды используя терминал Hyper-V или тот, который Вам по душе. Я обычно использую PuTTY.

Установка домашнего сервера NextCloud в Hyper-V для чайников Начинающий, Nextcloud, Своими руками, Облачное хранилище, Облачный сервис, Ubuntu, Сервер, Длиннопост

Далее просто выполняете команды по порядку и жмете Enter:

sudo apt-get update

Установка домашнего сервера NextCloud в Hyper-V для чайников Начинающий, Nextcloud, Своими руками, Облачное хранилище, Облачный сервис, Ubuntu, Сервер, Длиннопост

sudo apt-get upgrade

sudo apt-get autoremove

Устанавливаем NextCloud:

sudo snap install nextcloud

В команде ниже указываем имя Администратора NextCloud и его пароль.

Пароль можно будет позже поменять в админке:

sudo nextcloud.manual-install admin pass

Пример - sudo nextcloud.manual-install igor 123456

Ниже указываем список доверенных доменов:

sudo nextcloud.occ config:system:set trusted_domains 1 --value=192.168.0.74

Если у Вас есть доменное имя, то его указываем тоже:

sudo nextcloud.occ config:system:set trusted_domains 2 --value=www.ваше_доменное_имя.com

Открываем порты:

sudo ufw allow 80,443/tcp

Получаем сертификат (если у Вас есть доменное имя и Вы его указали выше):

sudo nextcloud.enable-https lets-encrypt

Для получения сертификата будут запрошены ваш email и доменное имя

example@www.ваше_доменное_имя.com

www.ваше_доменное_имя.com

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

Для начала увеличиваем размер лимита памяти, в зависимости от возможностей Вашего ПК:

sudo snap set nextcloud php.memory-limit=2048M

Изменим время ожидания выполнения задач:

sudo snap set nextcloud php.max-input-time=3600

sudo snap set nextcloud php.max-execution-time=3600

NextCloud у нас установлен и работает, но вот незадача, при попытке закачать файл больше 16Gb (в моем случае), мы получаем ошибку. Чтобы обойти данные ограничения, нам нужно увеличить лимиты для загружаемых файлов (в примере - 150Gb на файл):

sudo snap set nextcloud php.post-max-size=150G

sudo snap set nextcloud php.upload-max-filesize=150G

На этом собственно говоря все. Как говорится - проще некуда. Никаких баз данных и т.д.

Установка максимально простая.

Заходим в админку по адресу вашего сервера, вводим логин и пароль, что Вы указали и пользуемся на здоровье:

http://192.168.0.*

Установка домашнего сервера NextCloud в Hyper-V для чайников Начинающий, Nextcloud, Своими руками, Облачное хранилище, Облачный сервис, Ubuntu, Сервер, Длиннопост

Ну а у меня теперь будет напоминалка, как это всё сделать :)

Всем спасибо.