Как развернуть сервер внутри локальной сети?
Каким образом можно развернуть сервер внутри локальной сети и настроить его так, чтобы если пользователь с компьютера вводит доменное имя сайта, то он переходит на тот сайт, которые находится на локальном сервере? Если можно, скиньте подробные гайды или туториалы
- Вопрос задан более трёх лет назад
- 544 просмотра
Комментировать
Решения вопроса 0
Ответы на вопрос 1
Эта магия называется DNS. У вас в локальной сети есть DNS-сервис? Есть — нужно настраивать его (нужно записать, что теперь, например, toster.ru находится по 192.168.0.33). Нет — можно с утречка пройтись по компьютерам локальной сети и снести запись в файл HOSTS.
Все проще, если вы обращаетесь на имя компьютера внутри одной сети. Написали в браузере mylocalsite/ — и запрос пойдет на компьютер с именем mylocalsite.
Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать
Ваш ответ на вопрос
Войдите, чтобы написать ответ

- Серверное оборудование
Как защититься от аварий сервера?
- 1 подписчик
- вчера
- 116 просмотров

- Ubuntu
- +3 ещё
Как автоматизировать процесс выдачи Wildcart сертификатов?
- 1 подписчик
- 06 дек.
- 90 просмотров
Развертывание, настройка и администрирование Windows Server
Узнайте, как безопасно настраивать и администрировать Windows Server 2019 с помощью соответствующего средства управления. Узнайте, как развернуть Windows Server и выполнить настройку после установки.
Предварительные требования
Чтобы максимально эффективно использовать возможности в этой схеме обучения, вы должны иметь знания и практический опыт в следующих областях.
- Windows Server 2012 или Windows 2016.
- Базовые рекомендации по обеспечению безопасности.
- Клиентские операционные системы Windows, такие как Windows 10.
- Работа со средствами командной строки.
- Основные концепции виртуализации сервера и Microsoft Hyper-V.
- Автоматизация и мониторинг.
Как развернуть веб-сервер на Windows Server
Windows Server — это операционная система, специально разработанная Microsoft для работы на серверных компьютерах. Одной из важных задач сервера является обработка запросов от клиентов, и для этого необходимо настроить web сервер. В этой статье мы подробно рассмотрим процесс развертывания web сервера на Windows Server и предоставим вам детальные инструкции.
Первым шагом в настройке web сервера на Windows Server является установка необходимого программного обеспечения. Лучшим выбором для этой цели будет использование Internet Information Services (IIS), включенного в состав Windows Server. IIS является надежным и производительным веб-сервером, который предоставляет широкий набор функций для развертывания и управления веб-приложениями.
После установки IIS вам необходимо настроить его для работы с вашими веб-приложениями. Вам нужно будет создать сайт, определить пути к файлам, настроить параметры безопасности и т.д. В этом процессе вы можете использовать графический интерфейс IIS Manager или использовать PowerShell для автоматизации настройки.
Важно отметить, что безопасность является одной из ключевых составляющих настройки web сервера на Windows Server. Вы должны принять меры для защиты вашего сервера от уязвимостей, установив обновления системы, настроив фаерволл и применяя необходимые настройки безопасности.
После завершения настройки веб-сервера вы можете развернуть свои веб-приложения и начать обслуживание клиентов. Помните, что веб-сервер будет работать в фоновом режиме и обрабатывать запросы от клиентов, поэтому необходимо уделять внимание мониторингу и оптимизации производительности сервера.
В заключение, развертывание web сервера на Windows Server является важным компонентом создания надежной и производительной инфраструктуры для вашего бизнеса. Правильная настройка и обслуживание веб-сервера позволят вашим клиентам получать быстрый и надежный доступ к вашему веб-приложению.
Подготовка к установке Windows Server
Перед установкой Windows Server необходимо выполнить ряд предварительных действий.
1. Проверка системных требований:
Перед установкой Windows Server убедитесь, что ваш компьютер или сервер соответствует минимальным системным требованиям. Важно учитывать как аппаратные, так и программные требования. Проверьте, совместим ли ваш компьютер с выбранной версией Windows Server и наличие всех необходимых драйверов.
2. Резервное копирование данных:
Перед установкой операционной системы рекомендуется создать резервные копии всех важных данных, хранящихся на компьютере или сервере. Это позволит избежать потери информации в случае возникновения проблем или ошибок при установке.
3. Подготовка загрузочного диска или флэш-накопителя:
Для установки Windows Server вам потребуется загрузочный диск или флэш-накопитель с образом операционной системы. Убедитесь, что у вас есть подходящий загрузочный носитель и он готов к использованию.
4. Проверка наличия лицензионного ключа:
Убедитесь, что у вас есть действующий лицензионный ключ для установки Windows Server. Без лицензии невозможно установить и активировать операционную систему.
5. Определение разделов для установки:
Решите, на какой раздел вашего жесткого диска будет установлена Windows Server. При установке можно создать новый раздел или использовать уже существующий, но нужно учитывать свободное пространство и доступность раздела для установки операционной системы.
Следуя этим рекомендациям и выполняя необходимые подготовительные действия, вы готовы к установке Windows Server и настройке вашего web сервера на этой операционной системе.
Загрузка Windows Server с официального сайта Microsoft
Для установки Windows Server на ваш сервер, вам необходимо загрузить образ операционной системы с официального сайта Microsoft.
Следуйте этим шагам, чтобы загрузить Windows Server:
На странице Windows Server выберите нужную вам версию операционной системы. Вам может потребоваться выбрать между Windows Server Standard и Windows Server Datacenter в зависимости от требований вашего проекта. Нажмите на кнопку «Загрузка», чтобы перейти к загрузке выбранной версии.
Выберите язык и нажмите на кнопку «Скачать». Процесс загрузки может занять некоторое время в зависимости от скорости вашего интернет-соединения.
После завершения загрузки файла образа операционной системы Windows Server, вы можете начать установку на ваш сервер. Для этого вам понадобится образ операционной системы в виде ISO-файла или DVD-диска. Следуйте инструкциям по установке Windows Server на ваш сервер.
Теперь у вас есть образ операционной системы Windows Server загруженный с официального сайта Microsoft, и вы можете приступить к установке на ваш сервер.
Создание установочного USB-накопителя для Windows Server
Для установки Windows Server на компьютер необходимо создать установочный USB-накопитель. В этой статье мы рассмотрим пошаговую инструкцию по созданию установочного USB-накопителя для Windows Server.
Шаг 1: Подготовка USB-накопителя
Перед началом процесса создания установочного USB-накопителя убедитесь, что на накопителе нет важных данных, так как весь объем накопителя будет отформатирован.
- Подключите USB-накопитель к компьютеру.
- Откройте «Проводник» и выберите ваш USB-накопитель.
- Нажмите правой кнопкой мыши на выбранный накопитель и выберите «Форматировать».
- Убедитесь, что выбран файловая система FAT32 и нажмите кнопку «Форматировать».
Шаг 2: Подготовка образа Windows Server
Теперь необходимо скачать образ Windows Server с официального сайта Microsoft или воспользоваться уже загруженным файлом .iso.
- Откройте образ Windows Server на вашем компьютере.
- Распакуйте содержимое образа в любую папку на вашем компьютере.
Шаг 3: Копирование файлов на USB-накопитель
- Откройте папку с содержимым образа Windows Server.
- Выберите все файлы и папки внутри образа.
- Скопируйте выбранные файлы и папки на ваш USB-накопитель.
- Убедитесь, что все файлы и папки успешно скопированы на USB-накопитель.
Шаг 4: Завершение процесса
После успешного копирования файлов на USB-накопитель, вы можете использовать его для установки Windows Server на компьютеры без дисководов или для ускорения процесса установки.
Теперь у вас есть установочный USB-накопитель для Windows Server, и вы готовы приступить к установке операционной системы на компьютеры.
Установка Windows Server на физический сервер
Перед установкой Windows Server на физический сервер, вам необходимо убедиться, что у вас есть подходящий образ операционной системы и лицензионный ключ.
Вот пошаговая инструкция по установке Windows Server на физический сервер:
- Подключите загрузочный носитель с образом Windows Server к серверу. Это может быть DVD или USB-накопитель.
- Загрузите сервер с загрузочного носителя.
- Выберите язык установки, формат времени и валюты, а также раскладку клавиатуры. Нажмите «Далее».
- Нажмите «Установить сейчас».
- Введите лицензионный ключ Windows Server и нажмите «Далее».
- Прочитайте и примите условия лицензионного соглашения. Нажмите «Далее».
- Выберите тип установки: «Пользовательская: установка Windows только с удалением всех разделов» или «Сценарий: установка с сохранением существующих данных». Выберите наиболее подходящий для вашей ситуации и нажмите «Далее».
- Выберите диск, на который вы хотите установить Windows Server. Нажмите «Далее».
- Дождитесь завершения установки. Затем компьютер перезагрузится автоматически.
- Задайте пароль администратора и нажмите «Далее».
- Настройте параметры сети и нажмите «Далее».
- Выберите режим установки сервера: «Сервер с графическим интерфейсом пользователя» или «Сервер с интерфейсом командной строки». Выберите предпочтительный вариант и нажмите «Далее».
- Подождите, пока Windows Server выполнит конфигурацию и установку дополнительных компонентов.
- После завершения настройки, войдите в систему с помощью учетной записи администратора.
Поздравляю! Теперь у вас установлена Windows Server на физическом сервере.
Конфигурация и настройка web сервера на Windows Server
Изменение настроек web сервера
1. Откройте панель управления сервером и найдите раздел, отвечающий за настройку web сервера.
2. Внесите необходимые изменения в конфигурацию web сервера. Некоторые из основных настроек включают:
- Установка порта сервера
- Настройка доменных имен
- Установка SSL-сертификата
- Настройка доступа к серверу
Установка веб-приложений
1. Проверьте, что на вашем сервере установлен необходимый фреймворк (например, ASP.NET) и базы данных (например, Microsoft SQL Server).
2. Закачайте файлы веб-приложения на сервер с помощью FTP или других средств передачи файлов.
3. Создайте веб-приложение в системе управления сервером и укажите путь к файлам приложения.
Установка и настройка безопасности
1. Установите необходимые программы для обеспечения безопасности web сервера, такие как антивирусное программное обеспечение и брандмауэр.
2. Настройте брандмауэр для контроля доступа к серверу и предотвращения несанкционированного доступа.
3. Установите SSL-сертификат для обеспечения защищенного соединения с веб-сервером.
Запуск и тестирование веб-приложений
1. Перезагрузите web сервер после внесения всех необходимых изменений.
2. Откройте браузер и введите адрес вашего веб-приложения.
3. Проверьте работоспособность приложения и убедитесь, что все функции работают корректно.
4. Проведите тестирование нагрузки, чтобы убедиться, что сервер выдерживает требуемую нагрузку.
Резервное копирование и обновление
1. Установите регулярное резервное копирование файлов и баз данных web сервера.
2. Планируйте регулярные обновления операционной системы и основного программного обеспечения.
3. Проверяйте доступность сервера и его работоспособность, чтобы рано обнаружить и устранить возможные проблемы.
Домашний веб-сервер для чайников

Привет, Хабр! Относительно недавно после пары лет перерыва в айти, потраченных на изучение японского языка, мне пришлось срочно обновлять свои знания на работе. Ну знаете, искать возможности исполнить все хотелки начальника, как и положено эникею. Меня ждало много увлекательных открытий, но при этом, как водится, и немало боли и борьбы с непонятками. Docker, контейнеры, реверс DNS и реверс прокси, получение TLS сертификатов. В какой-то момент я наконец дошёл до удобного решения, которым я теперь хочу поделиться.
В своё время домашний сервер очень облегчил бы мне понимание Docker’а, да и удобство работы с ним неслабо бы повысил. Поэтому возникла идея написать эту статью, после прочтения которой любой человек даже с поверхностными знаниями в информационных технологиях сможет поставить себе постоянно доступный домашний сервер на базе Docker Swarm с удобной веб-мордой, простым получением TLS-сертификатов и Heroku-подобным функционалом (для чего будем использовать PaaS CapRover).
Статья, в общем-то, рассчитана на новичков, обладающих какими-то техническими знаниями — школьников старших классов, студентов и просто любителей — а потому вряд ли будет интересна серьёзным профессионалам.
Зачем оно нужно?

Ну как минимум потому что это круто, иметь домашний сервер! Да и настраивать всё это дело интересно. При этом он уже за месяца три отобьёт свою стоимость в сравнении с VPS’ом схожей конфигурации. Ну и наконец он просто радует глаз и миленький.
Что же до использования — иметь возможность развернуть в пару кликов дома Docker-контейнеры сразу в формате http://контейнер.мой.домен/ и в ещё один клик подключить к нему SSL неплохо упрощает жизнь. Сейчас всё больше и больше разнообразных приложений и сервисов переезжают в контейнеры и, если вы не любите лишний раз платить большим компаниям, иметь свои аналоги платных сервисов на домашнем сервере это очень удобно.
Ну а удобство для разработчиков и так понятно.
Подготовка
Поскольку мы хотим, чтобы наш домашний сервер был доступен из внешней сети, нужно сделать несколько приготовлений.
Port Forwarding

Проверьте наличие у вашего маршрутизатора (роутера) опции Fort forwarding/Port mapping/Перенаправление портов. Это не самый безопасный, но самый простой способ дать нашему серверу путь во внешний мир. Убедитесь что 80, 443 и 3000 порты у вас ничем не заняты — именно их вы будете прописывать IP адресу вашего сервера. Возможно в будущем, например, если вы захотите поднять почтовый сервер, вам придётся прописать дополнительные порты, но пока нужно только это.
Если проводить аналогию для понимания перенаправления портов, то представьте работу мамы в детстве. По умолчанию охранник туда не пустит, но стоит только сказать волшебную фразу «Я к маме», как строгий охранник уже пускает и говорит куда пройти. Вот и тут так же, с нашим NAT’ом роутера, только вместо «Я к маме» вы говорите порт, на что вас направляют куда надо.
Так же стоит убедиться, что у DHCP вашего роутера есть возможность зарезервировать выданный IP адрес за MAC. Скорее всего ваш сервер будет стоять включённым всё время и не просрочит свой выданный IP адрес, но подстраховаться никогда не бывает лишним. Если нельзя — выпишите машине статичный IP вне зоны выдачи адресов DHCP. Это сложнее и неудобнее, но тоже вариант (Кто-то даже скажет что так даже лучше сделать. Но я сейчас за простоту).
Нету этих опций? Возможно ещё не всё потеряно. Проверьте базу https://dd-wrt.com/support/router-database/ на наличие вашего роутера и есть ли тема по нему на 4pda. Если и там пусто. Ну, либо сворачивайте это руководство, либо пора купить новый роутер.
Домен

Конечно, ничто не мешает нам обращаться к нашему домашнему серверу и напрямую по IP адресу, но делать так не рекомендуется: и не особо безопасно, и запоминать IP адрес не просто, да и если у вас динамический, меняющийся каждый раз как вы заново подключаетесь к интернету, IP адрес, то запоминать его вообще бессмысленно. Ну и наконец, у нас много сервисов планируется, а чтобы к ним доступ был тупо по IP адресу, придётся их на разные порты навешивать. Оно вам надо?
Именно поэтому мы будем использовать домен.
Ну, знаете, ту самую штуку, которую вы вводите в адресной строке. В результате сможем давать сервисам поддомены для удобства и не страдать. Ну, например https://пароли.мой.домен/ для парольного сервиса или https://почта.мой.домен/ для почты. Удобно, в общем, запоминается. Делать это будет Ngnix под капотом нашего PaaS, при желании всегда можете разобраться в конкретике.

Рекомендую я, конечно, домен купить. Цены на домены в популярных зонах достаточно либеральные, платить раз в год, регистраторов куча. В плане выбора регистратора я ничего конкретного советовать не буду. Адекватнее всего ориентироваться по цене и отзывам. Разве что маленькое наблюдение: если регистратор требует миллиарды шекелей за такие вещи, как банальное управление DNS записями, то возможно это не очень хороший регистратор и следует посмотреть в другую сторону.
Впрочем если вы только пощупать пришли, то домен можно получить и бесплатно. Есть такой регистратор — Freenom, там можно бесплатно достать домен в зонах .tk, .ml, .ga, .cf или .gq. Правда как часто бывает с чем-то бесплатным, сайт глючный. Если на проверке доменов у вас всё время пишется, что домен занят, попробуйте поставить сразу полный путь. То есть вводите в проверочное поле не мой_домен, а сразу, скажем, мой_домен.tk.
Очевидно, что если что-то досталось бесплатно, то и потерять его легко — отзывы у Freenom в этом плане далеки от хороших. Так что если планируете что-то серьёзное, то лучше домен себе всё-таки купить у регистратора. Однако для маленького домашнего сервера потенциальная потеря домена не критична.
Cloudflare

Тут мы уже входим в пространство вкусовщины. Вам ничто не мешает использовать и редактор DNS записей вашего регистратора или любой другой сервис управления DNS записями домена. Тут, на хабре, вон вообще CloudFlare раком интернета недавно называли. Но с другой стороны, CloudFlare даже в базовой, бесплатной версии имеет достаточно много приятных фишек, которые ваш регистратор скорее всего не предоставляет. Тут и какая-никакая защита от DDoS, кеширование, расширенные возможности управления доступом и так далее и в том же духе. Плюс в одном из следующих пунктов, когда мы поднимем контейнер для DDNS, будет использоваться именно CloudFlare (впрочем настроить DDNS с другим провайдером вроде DuckDNS — задача достаточно тривиальная).
Правда многие фишки пройдут мимо нас, поскольку проксирование у CloudFlare на wildcard-записи (ну, это записи включающие всё пространство имён *.мой.домен) не работает (ну, за бесплатно). Однако ничего не мешает потом, уже для отдельных сервисов, сделать конкретную запись и пожать все плюшки платформы. Ну или ещё лучше, если у вас статический IP адрес, вообще без DDNS обойтись.
Платформа
Физический путь

Удобство физического пути очевидно — стоит отдельная машинка, не мешает основной работе, радует глаз.
Если спросить, что же использовать как платформу, наверняка многие ответят Малинку (то есть Raspberry Pi). На мой взгляд это не самый лучший выбор для данного случая.
Raspberry Pi отлично подходят для самодельных решений разнообразной направленности, но по соотношению цена/производительность не являются каким-либо лидером. И, хотя сейчас уже множество софта доступно под ARM системы, под x86 программы всё-таки чувствуют себя постабильнее.
Кто-то захочет переоборудовать старую машину или собрать на старых Xeon’ах себе компьютер для веб-сервера. И это тоже вариант, хотя по потреблению электроэнергии не оптимальный.
Я же советовал бы купить для данных целей недорогой (или не очень дешёвый, если вы хотите постоянно запускать «тяжёлые» задачи на вашем сервере) мини-пк (иначе называемый неттоп). Доступные варианты с 8 гигабайтами оперативной памяти, четырёхядерным Celeron и SSD на 128 гигабайт можно найти за 150-200 долларов и этого более чем хватит для домашних задач. При этом он будет компактным, тихим, удобным в размещении, достаточно приятно выглядящим и с низким TDP. Даже в самые дешёвые модели обычно можно доставить как минимум один, а порой и два 2,5 дюймовых диска, так что как файловую помойку его, в общем-то, тоже можно использовать. Хотя лучше превратить его в личное облако, а как файловый сервер использовать отдельное NAS-устройство — для отказоустойчивого хранения большого количества данных форм фактор мини-пк не слишком располагает.
Помимо этого, если вы «наиграетесь» и решите, что оно не ваше, такому компьютеру будет легко найти место. Например поставить обратно Windows и отдать маме/тёте Вале из третьего подъезда. Для офисной работы и использования браузера он подойдёт прекрасно.
А если вы за чуточку большую цену взяли мини-пк с несколькими сетевыми портами, то сможете превратить его в невероятно мощный и функциональный маршрутизатор, поставив сверху OpenWRT, PFsense, ClearOS или ещё какую-нибудь систему для роутеров. Ну и вообще альтернатив много, когда и если наиграетесь с предложенным мной вариантом.
Сразу, правда, надо учесть: шансы, что у такой машинки не будет работать Wi-Fi под линуксом, мягко говоря, не самые маленькие. Так что планируйте проводное соединение.
Заранее погуглите, на какую клавишу вызвать boot menu у вашей машинки. А образ для установки, если вы на Windows, лучше всего на флешку записывать программой Rufus.
Виртуальный путь

Если у вас есть просто живой интерес к тому, что и как настроить, определиться надо ли оно или не надо, то настраиваем виртуальную машину.
Тут стоит провести некоторое разграничение в понимании, поскольку дальше у нас будут ещё и контейнеры Docker. Внешне и по структуре они очень похожи, но вот по использованию неплохо так различаются.
Виртуальная машина — это именно то, как оно звучит — компьютер, которой на самом деле не существует, живущий внутри нашего. Её в какой-то мере можно сравнить с картонной коробкой. Её нужно где-то достать, развернуть, заполнить. Она стоит и занимает место, даже если не до конца заполнена. И залезть внутрь этой коробки иначе как сверху достаточно проблематично.
А контейнер — это как пакетик из магазина. Вроде и служит примерно той же цели, что и коробка, но внутрь что-то положить и достать проще, укладывать по-особому не нужно,места много не занимает, и выкинуть не жалко, и продырявить просто. Говоря же чуть более нормальным языком — контейнер это такая недо-виртуалка, которая ведёт себя скорее как процесс программы.

Конкретный гипервизор (ну, программа, где ваши виртуальные машины создаются и управляются) — на ваше усмотрение. Лучше, конечно, использовать гипервизор первого типа (они, как правило, быстрее, поскольку работают “под” операционной системой, а не “над” ней, как гипервизоры второго типа), но нашему серверу это не очень критично.
Внимание, любители всяких игруль, мобильных и не очень, на Windows — большая часть гипервизоров конфликтуют с эмуляторами Android для игр и с некоторыми античит решениями. Нормально только Bluestacks для Hyper-V работает, так что заранее выберите, что вам важнее.
VirtualBox

Для начала распишу для VirtualBox, который доступен на всех основных платформах, хотя и не отличается высокой скоростью.
Нажмите на кнопку New (Создать) для создания новой машины, и, ориентируясь по своей логике, задайте все настройки — если что, то потом всегда сможете поправить. Правда, меньше чем 2 гигабайта оперативной памяти лучше не ставить.
После создания машины войдите в её настройки. В разделе Storage (Носители) добавьте ваш образ к дисководу (синяя иконка), а в разделе Network (сеть) поменяйте тип подключения на Bridged Adapter (Сетевой мост) и выберите сетевую карту, по которой к вам приходят интернеты, после чего сохраните.


Hyper-V

Поскольку сам я в основном пользуюсь Windows, то предпочитаю использовать Hyper-V — встроенный в Pro версию системы гипервизор первого типа. Если вы пользователь Windows, то вам я тоже его советую — как и положено гипервизору первого типа, он весьма радует своей производительностью.
Чтобы использовать Hyper-V, активируйте его в Turn Windows Features on or off (Включение или отключение компонентов Windows) и перезагрузите компьютер. Вероятно, вам ещё придётся включить аппаратную виртуализацию в BIOS, если вы ещё не делали это. Также необходимо создать в Hyper-V manager (Диспетчер Hyper-V) сетевой интерфейс, ведущий во внешнюю сеть. Кликните справа на Virtual Switch Manager (Диспетчер виртуальных коммутаторов), выберите External (Внешний) и нажмите Create Virtual Switch (Создать виртуальный коммутатор). Далее в настройках External Network (Внешняя сеть) выберите сетевую карту, по которой к вам приходят интернеты, а потом сохраните.


После этого создайте новую машину в Hyper-V manager (но только не создавайте «быструю» машину, там всё не слава богу), а потом пройдите в её свойства и отключите Secure Boot (если машина 2-ого поколения). Остальные параметры по вкусу, но меньше 2 гигабайт оперативной памяти лучше не ставить. Ну и как сетевой интерфейс, очевидно, нужно поставить свежесозданный.
Установка и настройка системы

При выборе дистрибутива для установки у нас есть некоторый выбор (Но свериться с поддерживаемыми платформами на https://docs.docker.com/engine/install/ не помешает). Официально докер рекомендуется ставить на Ubuntu, я обычно предпочитаю Debian, но нам в целом не принципиально. Однако возможные подводные камни я распишу только для этих двух дистрибутивов.
И да, если можете, то лучше напрямую смотрите инструкции. А то информация в интернете имеет привычку устаревать и есть шанс, что к моменту, как вы это читаете, всё уже десять раз поменялось.
В случае с Ubuntu скачайте Ubuntu Server — на сервере графический интерфейс ни к чему, вы даже не будете подключать к нему монитор после изначальной установки. При установке важный момент — НЕ отмечайте Docker в качестве установки по умолчанию. Иначе он поставится как snap пакет, будет глючить, тупить и вообще, зачем вам лишние проблемы, не дружите со snap’ами, это плохая компания.
После установки системы копипастим по одной эти строчки (вы же уже подключились по SSH, правда ведь? Если нет, то чуть подальше будет инструкция) или вбиваем вручную:
sudo apt-get update sudo apt-get install \ ca-certificates \ curl \ gnupg \ lsb-release curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io
При установке Debian не надо отмечать web server, поскольку в качестве него у нас Nginx внутри контейнера Docker’а с нашим PaaS работать будет.
После установки системы копипастим эти строчки:
sudo apt-get update sudo apt-get install \ ca-certificates \ curl \ gnupg \ lsb-release curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io
В общем скачайте что вам нравится, запишите на флешку при физическом пути, подключите к виртуалке при виртуальном и давайте, устанавливайте по инструкциям.
Помимо того, чтобы вводить команды вручную, вы можете использовать Ansible или другие системы для развёртывания, но данное руководство их проигнорирует, поскольку ничего сложного мы не делаем. Просто знайте, что если вам потребуется однотипно настраивать несколько машин, то можно по ssh удобненько это делать через Ansible. Но ssh игнорировать всё же не стоит, ведь как минимум подключившись к своей машине по нему, вы сможете тупо копипастить все команды из руководств, а не вводить вручную.
Ansible это достаточно важный инструмент для Linux-админа и, если вы планируете сдавать или хотя бы просто учиться на сертификации от RedHat, то он вам понадобится. Ну так, на будущее.
Ssh клиентов великое множество, я обычно пользуюсь встроенным в Windows OpenSSH (хотя он встроен, но в старых версиях Windows 10 может быть по-умолчанию отключен. Включается в Turn Windows Features On and Off (Управление дополнительными компонентами)). Просто открываете PowerShell и пишите:
ssh логин_в_linux@IPшник_сервера
А после вводите пароль своего пользователя. Тут стоит отметить, что использовать ssh с паролем это не особо безопасно (но зато проще всего), и, если у вас будет желание с этим разобраться, то лучше настроить ssh ключ.
Систему мы настроили, но не спешите ставить CapRover. Сначала вернёмся к роутеру. Найдите в нём ваш сервер и зарезервируйте его IP адрес в DHCP. Ну или поменяйте его на что-нибудь приятное и зарезервируйте. У вас есть чувство прекрасного, я уверен. После этого пропишите перенаправление с 80, 443 и 3000 портов маршрутизатора на 80, 443 и 3000 порты нашего сервера.
Вот пример того, как оно выглядит в моём роутере TP-Link:


Теперь идём к домену. Войдите в CloudFlare или DNS редактор вашего регистратора и создайте следующую запись:
Тип: A
Хост: *.ваш.домен
Запись: указывает на ваш внешний IP адрес

Если вы не знаете как узнать ваш внешний IP адрес, то посмотрите в настройках интерфейса, роутера, где угодно. Ну или наберите в поисковике что-нибудь вроде «мой IP», если копаться не хочется.
Можете сразу не отходя от кассы создать токен, если планируете динамически обновлять DNS при изменении вашего IP адреса.
Для этого пройдите по ссылке https://dash.cloudflare.com/profile/api-tokens и создайте токен со следующими свойствами:
Zone — Zone Settings — Read
Zone — Zone — Read
Zone — DNS — Edit
Include — All zones
Сохраните длинный Cloudflare API токен, но далеко не убирайте.

Всё, теперь заходим на сервер и пишем волшебную команду, которая поднимает нашу систему для управления контейнерами:
docker run -p 80:80 -p 443:443 -p 3000:3000 -v /var/run/docker.sock:/var/run/docker.sock -v /captain:/captain caprover/caprover
Если вы плохо знакомы с Docker’ом, то тут мы запускаем наш первый контейнер — небольшой PaaS CapRover. Помимо этого мы даём портам в контейнере путь на волю (-p 80:80 -p 443:443 -p 3000:3000), позволяем контейнеру иметь доступ к демону Docker на хост-машине (-v /var/run/docker.sock:/var/run/docker.sock) и делаем так, чтобы папка из контейнера хранила своё содержимое в папке на хосте (-v /captain:/captain). Если так не сделать, то при перезапуске контейнера всё содержимое: настроечные файлы и другие данные нашего контейнера, потеряются навсегда. Так что никогда не забывайте указывать команду -v при работе docker в консоли, чтобы потом не плакать у разбитого корыта. Ну а caprover/caprover — это образ на Docker Hub.
Подождите немного и зайдите либо по айпи адресу, либо по адресу вашего домена:3000 (например http://мой.домен:3000), введите пароль captain42 . После этого тут же введите в нижнее поле ваш домен и нажмите Update Domain. Можете также нажать на Enable HTTPS, но вот на Force HTTPS не надо нажимать — Cloudflare и так трафик у вас (если вы оставили рекомендуемые настройки) с http на https переводит. Конфликтов на этом поводе нам не надо.
Настала пора запустить наш первый контейнер внутри PaaS.
Перейдите в веб панели в раздел Apps, нажмите на One-Click Apps/Database, найдите CloudFlare DDNS. Это достаточно простой контейнер, весь смысл которого сводится к тому чтобы раз в пять минут проверять, изменился ли IP адрес сервера, и, если изменился, обновлять DNS запись на CloudFlare.

После того как вы нажали на него, вы увидите много опций для ввода. Вообще говоря, чтобы всё заработало нам достаточно просто указать наш сохранённый токен CloudFlare и задать какое-нибудь имя. Но давайте всё-таки разберёмся, что именно мы видим.

А видим мы опции ввода так называемых переменных окружения. Не всех правда, а только тех, которые указал автор конфигурационного файла для CapRover. Значения из этих переменных контейнер может достать и использовать в своих целях, проще говоря через них задаётся начальная конфигурация контейнера.
Так вот, задайте какое-нибудь имя, вставьте ранее сохранённый токен и нажмите Deploy. Контейнер заработал. Теперь можете делать что угодно!
Чуть сложнее
Этот контейнер был простым, без веб доступа, но что у тех, к которым мы будем иметь доступ? Да в общем всё так же, разве что ещё можно включить https, задать домен, указать HTTP порт контейнера и включить websocket. Попробуйте, это просто и интересно!

Использование

И вот наконец у нас всё стоит и работает.
Зачем оно вам? Ну, если вы до сих пор не знаете — придумайте. Для установки в один клик в CapRover доступно множество приложений для повседневного использования. Например менеджер паролей Vaultwarden. Торрент-клиент Qbittorrent. Сервер Minecraft. Боты для Discord. Вариантов много.
Я, например, держу стол для игры в DnD с друзьями Foundry VTT, веб-интерфейс для пробуждение от спячки моего домашнего компьютера (чтобы потом подключаться по RDP), свой маленький гит на базе Gitea, удобный фронтэнд для чтения Reddit’а libReddit, веб-архив для закладок и ещё кучу всякой всячины для тестов и изучения.
Ничто не мешает вам самому поэкспериментировать с контейнерами, которых в списке ещё нет, а если результат будет удовлетворительным — опубликовать свой конфиг на Github среди других приложений для установки в один клик.
В самом начале мы установили SSH, так что если вы захотите более тонкой настройки, подключите и тыкайтесь. Советую также зайти на SSH через VS Studio Code с установленным расширением Docker’а, и установить его же сразу там на ваш сервер. Теперь наблюдать, управлять и чистить мусор в контейнерах гораздо удобнее.
Что дальше?
Возможно, вам уже хватило, вы поняли что это не ваше и вообще. Тоже неплохой результат. Возможно, вы просто хотели домашний сервер и получили его — опять же, к результату мы пришли. Или же вы хотите большего — и это тоже прекрасный результат! Надо понимать, что хотя Docker Swarm уже несколько протух, для небольших нагрузок, вроде домашнего использования, он подходит на отлично. А если вам мало, то, разобравшись как и что тут работает, вы можете медленно начать своё движение к изучению kubernetes.
Что можно посоветовать конкретного? Ну, если Docker вам интересен и хочется в нём разобраться поглубже, то вводный цикл статей от Microsoft достаточно приятно и наглядно объясняет как и что оно.
Если хотите покрупнее брать — и в Hyper-V получше разобраться, и в контейнерах и чуточку затронуть кубер, то вот ещё у них есть неплохие материалы.
Не, не, вы не подумайте, я хоть и виндовый админ (ну хорошо-хорошо, эникей а не админ), но не сказать чтобы прям топлю за Microsoft, просто материалы у них бесплатные и достаточно толковые, на мой взгляд.
Коли от Microsoft тошнит — ищите курсы. В англоязычных интернетах с этим проще — идёшь на Udemy или Pluralsight и выбираешь курс по теме, где люди поменьше в комментах бугуртят на качество, и в бой. С русскоязычными курсами посложнее в выборе, но кто ищет — тот найдёт.
Ну и наконец если в целом вся эта тема с сервисами на своём домашнем сервере вам интересна, то вот отличный список selfhosted решений на все случаи жизни.
В общем, да пребудет с вами IT сила!