Как создать сервер с нуля: полное руководство
Создание сервера кажется сложной задачей, но вы можете попробовать создать сервер для личных целей или коммерческих. В статье мы описали компоненты собственного сервера и подробные шаги его создания с нуля.
Команда is*hosting 30 мая 2023 6 мин

- Несколько вопросов перед началом создания собственного сервера
- Что необходимо для создания своего сервера?
- Сколько стоит создать собственный сервер?
- Для чего нужен собственный сервер?
Сервер — необходимая часть любой системы, основанной на использовании информационных технологий. Мы пользуемся серверами каждый день — например, почтовые ящики любых провайдеров (Google, Yandex, Mail, Yahoo и др.) связаны с облачными серверами, хранящими весь объем получаемой и отправляемой корреспонденции.
Существует несколько видов серверов, отличающихся по стоимости и функциям, поэтому их можно использовать как в коммерческих, так и в личных целях.
Создание сервера не настолько сложная задача, как может показаться в начале. Даже не имея опыта в настройке серверов, написании кода или, в целом, работы с подобными технологиями, сервер может создать практически любой пользователь. В этой статье вы узнаете про основные этапы создания собственного сервера.
Несколько вопросов перед началом создания собственного сервера
Что необходимо, чтобы создать сервера?

Итак, что нужно для сервера:
Физический сервер, виртуальный сервер или обычный компьютер. “Железо” вашего сервера является его главным компонентом. Вы можете использовать другой компьютер в качестве сервера, достаточно убедиться, что он оснащен процессором с частотой 300 МГц и 64 МБ RAM. Альтернатива — приобрести физический сервер или виртуальный сервер. От этого будет зависеть его стоимость.
Сетевой роутер (маршрутизатор). В большинстве случаев подойдет обычный беспроводной домашний роутер, которым мы пользуемся для выхода в Интернет. Маршрутизатор может выполнять функцию фильтра пакетов данных, которые поступают на ваш домашний сервер и выводятся из него.
Кабель Ethernet: Необходим при создании сервера, который будет находится рядом с вами. Эти кабели также известны как CAT5 и используются для подключения компьютеров при установке сервера. С помощью кабеля Ethernet можно увеличить скорость получения данных до 100 МБ/с данных. То есть к серверу можно подключиться как по беспроводной, так и по проводной технологии.
Память. Убедитесь, что выбранный сервер (или компьютер) обладает достаточным объемом оперативной памяти (RAM). В сервере RAM важна для обработки данных, поступающих с жестких дисков (HDD) на центральный процессор (CPU).
Если вы планируете собрать собственный сервер из нескольких компонентов, то вам понадобятся:
- Оперативная память DDR4
- Для более сложных задач процессоры Ryzen или Xeon
- Материнская плата HP, Dell, Asus или ASRock
- Жесткий диск в виде SSD или NVMe
- Система охлаждения
- Сетевая карта, роутер и кабель Ethernet
- Блок питания мощностью от 300-500 Вт
- Корпус для всех компонентов сервера
Сколько стоит создать свой сервер?

Стоимость сервера преимущественно зависит от его физической оболочки. Если вы планируете создать домашний сервер своими руками, можете использовать компьютер в качестве сервера, то это обойдется вам бесплатно. Покупка отдельного сервера или сбор из компонентов может быть более затратной.
Есть альтернативные варианты, которые не только сократят ваши расходы, но и облегчат работу с сервером. К ним относятся облачные хостинги, VPS и выделенные серверы.
Облачный хостинг — распространенная услуга, которую можно приобрести у Amazon, Google, DropBox и т.п. Однако такой сервер, вероятнее всего, будет привязан к конкретному приложению и будет полностью контролироваться провайдером. У вас не будет возможности настраивать его под ваши нужды.
VPS, или виртуальный приватный сервер, представляет собой часть физического сервера, выделенного под ваши потребности с помощью технологии виртуализации. В данном случае вы вольны самостоятельно выбирать ОС, программное обеспечение, варианты использования ресурсов виртуального сервера. Такой сервер можно масштабировать в любой момент. Стоимость VPS от is*hosting стартует от $5.00.
Выделенный сервер — это физически представленная машина, все ресурсы и мощности которой предоставлены только одному арендатору. Это наиболее надежный вариант хостинга, в котором исключен эффект “плохих соседей”, а уровень безопасности вынесен на более высокий уровень. Такие серверы пользуются популярностью у крупных проектов. Стоимость выделенных серверов от is*hosting стартует от $70.00.
Для чего нужен собственный сервер?

- Сервер для проекта. Это может быть сайт, мобильное приложение или площадка для разработки новой программы. В данном случае имеется в виду коммерческое использование сервера, для которого необходима определенная настройка. П очтовый сервер своими руками — это возможность автоматизации email-маркетинга.
- Сервер для торговли на биржах. Многие трейдеры выбирают вариант собственного сервера для более эффективной торговли на популярных биржах. Как выбрать VPS/VDS для Forex и MetaTrader? Для торговли ботами на Binance также подойдет виртуальный сервер — VPS для Binance.
- Сервер для хранения бэкапов. Если вы не хотите доверять свои резервные копии таким компаниям как Google или Apple, то вы всегда можете сохранять бэкапы необходимых устройств на свой собственный сервер.
- Игровой сервер своими руками . Иногда для полного погружения в игру необходим собственный сервер. Например, многие игроки Minecraft и CounterStrike прибегают к созданию своих серверов. Как создать свой сервер Minecraft?
- Домашний медиа сервер. Если вы хотите иметь доступ ко всем локальным медиафайлам на любом устройстве в вашем доме, домашний сервер для хранения данных с удаленным доступом — одно из лучших решений. Чтобы сделать процесс еще проще, вы можете использовать такие сервисы, как Plex или Kodi, для управления медиа файлами.
Определите требования к серверу

Первым шагом при создании сервера является определение ваших требований. Вы должны учесть количество пользователей, которые будут обращаться к серверу, тип приложений, которые вы будете запускать, объем памяти, который вам потребуется, и уровень производительности. При принятии решений следует также учитывать будущий рост и масштабируемость.
Некоторые приложения требуют больше ресурсов, чем другие, поэтому важно выбрать сервер, способный удовлетворить ваши конкретные потребности. Например, вы можете заранее узнать о “весе” нужных программ и отталкиваться от этих значений.
Что касается производительности, то в данном случае стоит обратить внимание на процессор (CPU), объем оперативной памяти и устройства хранения данных. При аренде выделенного сервера или VPS у хостинг-провайдера такие параметры можно выставить во время выбора сервера.
Устройства хранения данных — это хранилища, где вы будете накапливать различные данные, включая резервные копии, базы данных, медиафайлы и т.п.. Это может быть как выделенное на сервере место, либо отдельное устройство (дополнительный сервер или диск).
Для создания собственного сервера необходим сетевой маршрутизатор, поэтому стоит заранее подготовится к обеспечению нужной пропускной способности. Если вы планируете создать веб-сайт с высокой посещаемостью или предоставляете услуги внутри мобильного приложения большому количеству пользователей, вам понадобится сервер с быстрыми сетевыми интерфейсами и высокой пропускной способностью.
Создавая собственный сервер, не забудьте, что объем хранимых данных на нем со временем будет увеличиваться, как и устанавливаемые программы. Будь то личный сервер или коммерческий, ориентируйтесь на возможности масштабирования.
Выберите тип сервера

Итак, у вас есть два пути: собрать сервер своими руками из необходимых компонентов (или старого компьютера) или арендовать сервер с нужным набором технических характеристик у хостинг-провайдера.
Среди физических серверов выделяют башенные (Tower, подходят для личного использования), стоечные (для установки в серверную стойку), гибридные (сочетание выделенного сервера и виртуальных) и блейд-серверы (установка в блейд-шасси). Такое оборудование является дорогостоящим вариантом.
Аппаратное обеспечение стоит дорого, а на настройку системы уйдут часы, даже если вы опытный пользователь. Аренда сервера — это более простой и безопасный вариант, поскольку предлагаются готовые решения, подстраиваемые под ваши потребности.
Рассмотрим наиболее простые и популярные варианты, которые будут стоить вам ежемесячной арендной платы в зависимости от используемых ресурсов:
- Выделенный сервер. Выделенный сервер обеспечивает ту же функциональность, как и сервер в собственности компании или конкретного пользователя, но обслуживается хостинг провайдером и находится в защищенном дата-центре. Существуют администрируемые и не администрируемые выделенные серверы, оба вида отличаются высокой производительностью, высокой скоростью соединения, гибкой настройкой.
- VPS. Это изолированная виртуальная среда на выделенном сервере, с определенными мощностями CPU, RAM и дисковым пространством. За счет того, что на одном выделенном сервере могут независимо находится несколько VPS, стоимость виртуального приватного сервера гораздо ниже. При этом он дает такие же возможности как и выделенный сервер.
Выберите опции

Если вы планируете арендовать сервер у хостинг-провайдера, то вам доступно несколько опций.
Администрируемый сервер предполагает предустановку операционной системы, удобной панели управления, основных сервисов (php, ftp, apache, mySQL и т.д.) помощь при недоступности сервера, настройка автоматических бэкапов, антивирусная проверка, консультации и т.п.
При выборе не администрируемого сервера, хостинг-провайдер предоставит вам его с установленной чистой ОС, либо без ОС (если вы указали данное требование в примечаниях к заказу). Вы получаете доступ к специальному интерфейсу для удаленного управления сервером (IPMI) и можете самостоятельно настраивать сервер под свои нужды.
Многие хостинг-провайдеры имеют международную инфраструктуру, поэтому вы можете выбрать локацию вашего сервера в зависимости от целей его использования.
Сконфигурируйте свой сервер

При создании сервера своими руками его конфигурация зависит от приобретенных компонентов и выбранного ПО. При аренде сервера в специальном конфигураторе вы можете выбрать те параметры, которые вам необходимы, включая некоторые дополнительные сервисы:
- Операционная система (версии Windows или Linux)
- Объем оперативной памяти
- Объем дискового пространства
- Наличие графического процессора
- Количество IP-адресов
- Панель управления
- Вид администрирования
- Регулярность резервного копирования
- Скорость порта и размер пакета трафика
- Тип защиты от DDoS атак
Если вы не определились с выбором конфигурации, то можете обратиться в техническую поддержку за помощью.
Выбор операционной системы вашего сервера зависит от личных предпочтений и необходимой гибкости. В пользу Windows говорят ее практичность, производительность и наличие широких возможностей. За счет своей надежности Windows Server идеально подходит для терминалов и файловых серверов. Семейство Linux отличается несколькими дистрибутивами (Debian, Ubuntu, CentOS), которые имеют свои преимущества и подходят для разных задач. Одним из первых дистрибутивов Linux для серверов является Ubuntu, который до сих пор составляет конкуренцию Windows.
Также для работы с сервером понадобится панель управления. Среди наиболее популярных и понятных вариантов: cPanel, ISPmanager, VestaCP, Plesk. Выбор панели может зависеть начиная от графического интерфейса и заканчивая возможностями управления. Для работы вам также понадобится дополнительное ПО (службы для работы с базами данных и др.).
Что касается устройств хранения, то рассмотрите возможность использования твердотельных накопителей (SSD) для ускорения доступа к данным и скорости чтения/записи. Если вам нужен большой объем памяти, используйте жесткие диски (HDD) или сетевые устройства хранения данных (NAS).
Обеспечьте безопасность вашего сервера

Защита ваших данных и приложений от несанкционированного доступа, кражи или повреждения предполагает несколько мер:
- Настройте брандмауэры для ограничения доступа к вашему серверу и блокирования несанкционированного трафика. Вы можете использовать встроенные брандмауэры операционной системы или брандмауэры сторонних производителей.
- Защитите методы удаленного доступа, такие как SSH (Secure Shell), чтобы гарантировать, что только авторизованные пользователи могут получить удаленный доступ к вашему серверу. Используйте надежные пароли и двухфакторную аутентификацию для дальнейшего повышения безопасности.
- Используйте шифрование для защиты конфиденциальных данных, которые передаются и хранятся на вашем сервере. Это может включать шифрование SSL/TLS для веб-трафика или шифрование диска для хранения данных.
- Регулярно обновляйте операционную систему, программное обеспечение и патчи безопасности. Это гарантирует, что все известные уязвимости устранены и не смогут быть использованы злоумышленниками.
- Отслеживайте и просматривайте журналы логов, чтобы вовремя обнаружить любую подозрительную активность или попытки получить доступ к вашему серверу.
- Обеспечьте физическую защиту сервера, разместив его в запертой серверной комнате, к которой имеют доступ ограниченный круг лиц.
Управление и обслуживание вашего сервера

Отслеживайте производительность и использование ресурсов вашего сервера, чтобы выявить потенциальные уязвимости и устранить их до того, как они приведут к проблемам. Используйте инструменты мониторинга производительности для отслеживания использования процессора, памяти, дисков и сетевого трафика (IDS/IPS).
Немаловажно настроить автоматическое резервное копирование на удаленное хранилище. Существует несколько способов создания бэкапов и разные виды хранилищ — в этой статье мы рассказали, чем они отличаются и как выбрать подходящий.
Никто не защищен от аварийных ситуаций, поэтому следует разработать план по восстановлению данных и периодически его пересматривать на случай новых угроз.
Управление сервером начинается еще на этапе его создания и зависит от выбранных компонентов, конфигурации и даже провайдера. Важно поддерживать безопасность, производительность и доступность вашего сервера на соответствующем вашим потребностям уровне. От этого, в целом, зависит ваш опыт работы с сервером.
Все описанные в статье шаги можно сделать самостоятельно, но стоит учитывать, что это займет время и потребует значительных технических знаний. Если вы хотите, чтобы работа была сделана быстро и без ваших усилий, напишите нам. Специалисты создадут сервер под ваши требования и предоставят все в лучшем виде.
Домашний веб-сервер для чайников

Привет, Хабр! Относительно недавно после пары лет перерыва в айти, потраченных на изучение японского языка, мне пришлось срочно обновлять свои знания на работе. Ну знаете, искать возможности исполнить все хотелки начальника, как и положено эникею. Меня ждало много увлекательных открытий, но при этом, как водится, и немало боли и борьбы с непонятками. 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 — EditInclude — 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 сила!
Как сделать сервер дома

В кругу веб-разработчиков можно часто слышать о VPS-серверах и хостинг-провайдерах, предоставляющих виртуальные машины в аренду. Такие услуги приходят на помощь загруженным сайтам, корпоративным порталам, форекс-трейдерам и другим проектам. Найти подходящий хостинг бывает довольно проблематично: высокая цена, плохая производительность и прочие аспекты, мешающие оптимальному функционалу. Альтернативой VPS может стать создание собственного домашнего сервера. Не сказать, что это лучший вариант, но при грамотном подходе для небольшого сайта хватит ресурсов домашнего ПК. Конечно, это не будет VPS в обычном понимании, лучше это назвать хостингом для сайта.
О создании домашнего сервера сегодня и поговорим.
Создаем сервер с нуля
Прежде чем создавать домашний хостинг, стоит проверить, потянет ли компьютер высокую нагрузку и справится ли интернет с большим потоком данных. Для полного погружения в тему поговорим обо всех нюансах.
При создании собственного сервера можно пойти двумя путями: использовать личный компьютер или арендовать VPS у хостинг-провайдера.
В первом случае потребуется отдать все силы ПК на обработку данных и поддержание высокой производительности хостинга. Обратите внимание, что сервер будет использовать ваше интернет-соединение, поэтому позаботьтесь о бесперебойной сети с мощным тарифным планом.
Если вы уверены в силах своей машины, то следующий шаг — создание статического IP. По умолчанию адрес установлен как динамический, он изменяется каждый раз при выходе в интернет. Статический же напротив устанавливается один раз и всегда остается неизменным. Это позволяет обеспечить точку входа для «белых» сайтов, платежных систем, безопасных соединений и почтовых сервисов.
Когда мы запускаем свой ресурс на стороннем хостинге, от нас требуется лишь оплата услуги, а вот при создании собственного сайта на локальной машине, помимо всего прочего, необходим статический адрес. Их количество ограничено, каждый из них арендуется на определенное время, и в этот период никто другой не может его официально использовать. Проще говоря, когда за организацией закреплен индивидуальный адрес, клиенты смогут легко найти веб-ресурс и приобрести нужные услуги.
Обсудить покупку статического IP вы можете со своим интернет-провайдером. Далее следует установка программного обеспечения, в нашем случае отлично подойдет Open Server, серверная платформа, предназначенная для веб-разработчиков. Благодаря ей мы можем не беспокоиться об установке PHP, Apache, MySQL и прочих средствах. Установив данное ПО, мы сможем запустить сервер дома и загрузить на него сайт.
Рассмотрим краткую инструкцию по работе с Open Server:
- Первым делом установим официальную версию — переходим для этого на страницу разработчика и выбираем один из пакетов программы.

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

- Устанавливаем программу и переходим в ее директорию. Здесь перед нами отобразится набор различных папок и два файла для запуска — выбираем подходящий под разрядность ОС и открываем его. Также для запуска отключаем антивирус.

- В нижнем правом углу будет активирована новая иконка в виде красного флажка — она сигнализирует о том, что программа открылась, но еще не запущена. Оставим ее пока такой, кликнем по значку и перейдем в настройки.

- Переходим во вкладку «Сервер» и обращаем внимание на строку «IP-адрес сервера». По умолчанию он установлен как локальный, то есть доступ открыт только текущему компьютеру. Для запуска сервера в Интернете потребуется указать статический адрес и нажать «Сохранить».

- Теперь можно запускать сервер — для этого достаточно кликнуть по красному флажку и выбрать опцию «Запустить». В некоторых случаях может возникнуть ошибка «Несовместимость конфигурации: домен/алиас localhost можно использовать только с IP-адресом 127.0.0.1». В таких случаях необходимо перейти в директорию ПО, открыть папку domains и переименовать папку localhost в openserver.

Мы провели работу с настройкой локального сервера. Что касается аренды VPS у хостинг-провайдера, нам потребуется подобрать подходящий тариф и активировать его. На готовый сервер мы сможем выгрузить свой веб-ресурс, а затем открыть его всему интернету.
На этом наша статья подходит к концу. Удачи!
Как создать свой хостинг (сервер) дома для веб-сайта (чтобы сайт был доступен из локальной сети и Интернет). Простейший пример в Open Server при работе в Windows

Если вы создаете свой сайт и хотите, чтобы он работал только в вашей локальной сети, либо вам нужно сначала его «от и до» протестировать, прежде чем выкладывать в сеть (/либо надумали сэкономить средства на платном хостинге) — можно для этого дела «приспособить» свой домашний ПК/ноутбук (сделать его эдаким сервером). Этим, собственно, мы сегодня и займемся.
Благо, что настраивается это всё достаточно легко (самые большие сложности — обеспечить ему стабильность, ведь далеко не каждый из нас сможет ежедневно/ежечасно контролировать работу компьютера, его подкл. к Интернет, нагрузку ЦП и пр. Но об этом я пару слов скажу в итогах).
Еще пара важных нюансов : способ, изложенный ниже, актуален для ОС Windows 10/11; компьютер должен быть подключен или к локальной сети / или к Интернет (в моем примере ПК подкл. к обычному дом. Wi-Fi роутеру, а он в свою очередь к Интернет).
Итак, теперь к делу.
Пошаговые действия
Установка веб-сервера, размещение файлов сайта
ШАГ 1
В качестве веб-сервера я бы порекомендовал остановиться на Open Server. Он достаточно удобный, надежный, имеет кучу опций (можно выбрать версию PHP, MySQL, настроить авто-выполнение скриптов и пр.). Весь перечень функций приведен на офиц. сайте.
После установки (стандартная, поэтому ее не описываю) и запуска Open Server — у вас в трее должен появиться зеленый флажок (значит веб-сервер работает и с ним все в порядке!).
Кстати, часто Open Server не хочет запускаться из-за отсутствия Microsoft Visual C++ (при установке веб-сервера — не отказывайтесь от загрузки этих пакетов).

Open Server установлен и запущен! Горит зеленый флажок в трее, рядом с часами
ШАГ 2
Далее нужно зайти в папку установки Open Server и открыть каталог «Domains» (в моем случае весь путь такой: C:\openserver5.2\domains ).
В этом каталоге нужно создать папку с именем вашего домена (адреса сайта) , например: testforme.site (можно использовать и testforme.ru , и testforme.com , и даже yandex.ru т.д.*).
* Но крайне желательно: выбрать такой домен/адрес сайта, который никем не занят, чтобы в последствии вы могли его зарегистрировать у регистратора, если надумаете открывать сайт для доступа из Интернет. Проверку домена на занятость можно выполнить у Рег.ру.
Примечание : в созданном каталоге с именем домена (в моем случае testforme.site ) нужно разместить файлы сайта: движок, HTML-страницы и т.д. В своем примере я создал в этом каталоге 1 файл index.php и добавил в него короткую строку: «Привет! Этот сайт открылся с дом. хостинга» ). Этого хватит для проверки. Установку движка WordPress рассмотрел в конце статьи, здесь не хочу загромождать.

Папка = имя домена (в ней файл index.php, движок сайта)
Настройка Open Server для доступа к сайту по локальной сети (по IP и по доменному имени)
ШАГ 3
Чтобы открыть настройки у Open Server — сделайте правый клик мышки по его значку в трее, и в появившемся меню выберите соотв. пункт. См. скрин ниже.

Настройки Open Server — клик по значку в трее, в меню выбрать оное
Далее в меню «Модули» укажите необходимую версию PHP, MySQL и пр. для работы вашего сайта. Думаю, что для тестового файла (пока что. ) — можно задать параметры примерно как у меня на скрине ниже.

Можно выбрать версию PHP, MySQL и пр. — модули в Open Server
В меню «Сервер» нужно изменить парочку опций:
- разрешить запуск сервера в агрессивном режиме (чтобы допустить его работу, если возникнут незначительные ошибки);
- установить пункт «Все доступные IP» в пункте «IP-адрес сервера» ;
- затем нужно нажать по меню «Сохранить» .

Все доступные IP, перезагрузка
Далее нам нужно узнать локальный IP адрес компьютера, на котором запущен Open Server (по нему можно будет открывать сайт).
Самый простой способ узнать его — открыть настройки роутера и посмотреть список подключенных устройств (впрочем, есть и др. способы). В моем случае напротив имени ПК «alex-pc» значится адрес 192.168.1.2 (он и нужен!).
Примечание : кстати, в настройках роутера неплохо было бы сделать этот IP (192.168.1.2, например) постоянно закрепленным за вашим компьютером. Иначе есть риск, что через неск. дней этот IP роутер даст другому компьютеру в вашей сети.

Настройки роутера — узнаем свой локальный IP
Затем в настройках Open Server в разделе «Алиасы» нужно добавить:
- в строку «Исходный домен» свой локальный IP (192.168.1.2 в моем случае);
- в строку «Конечный домен» адрес/домен своего сайта (testforme.site в моем случае).

Алиасы — привязываем IP к домену
По IP 192.168.1.2 — сайт теперь будет доступен со всех ПК/ноутбуков/телефонов в локальной сети (т.е. тех, которые подключены к Wi-Fi сети вашего роутера, например).
По доменному имени testforme.site — сайт будет доступен только с того компьютера, на котором запущен Open Server. Чтобы сайт был доступен по доменному имени на другом ПК/ноутбуке в локальной сети — нужно на нем открыть блокнот и изменить системный файл hosts (добавить в него строку вида: 192.168.1.2 testforme.site ).

Пример. Из файла hosts
Как это выглядит на примере приведено ниже (обратите внимание на адресную строку браузера — т.е. сайт доступен одновременно и по IP, и по домену).

Теперь сайт доступен в локальной сети, достаточно указать его IP в адресной строке браузера
Как открыть доступ к сайту из сети Интернет по IP и по доменному имени
Реализуемость этой «штуки» во многом зависит от вашего Интернет-провайдера. Дело в том, что внешний IP-адрес у вас может быть «белым» и «серым» (со вторым ничего не получится. ) . Чаще всего провайдеры сегодня выделяют динамический белый IP, и в этом случае всё должно работать (до смены этого IP).
В общем, в идеале нужно заказать у провайдера услугу выделения «белого статического IP-адреса» (у некоторых компаний услуга уже включена по умолчанию, и вам не нужно ничего делать; у других — покупается и подкл. отдельно: где-то дешево / где-то дорого. ).
В любом случае — попробовать нижеописанное труда не составит (даже, если вы ничего не поняли из вышесказанного и не знаете какой у вас IP)!
ШАГ 4
Итак.
Сначала нужно узнать свой внешний IP адрес. Для этого достаточно, как уже говорил выше, открыть настройки роутера и посмотреть вкладку «Состояние / инф. о подключении» (в моем примере внешний IP: 92.252.216.210). Запоминаем его!
Далее нам нужно в настройках роутера пробросить порты 80 и 443 на тот ПК, на котором расположен сайт (эти порты по умолчанию используются для подкл. к сайту по http\https). Более простой вариант — ничего вручную не пробрасывать, а просто включить DMZ-хост для вашего ПК (т.е. DMZ для вашего локального IP). Ссылка ниже в помощь!

Узнаем свой IP-адрес (он должен быть белым!), и пробрасываем порты
Затем в настройках Open Server необходимо открыть вкладку «Алиасы» и связать там свой внешний IP с доменным именем. См. скрин ниже.

Добавляем внешний IP в алиасы — Open Server
Попробуйте после этого набрать свой внешний IP в адресной строке браузера (с любого ПК/телефона/ноутбука, подкл. к Интернет). Должен открыться ваш сайт!
Половина задачи выполнена!?

Сайт открывается по IP
ШАГ 5
Если вы хотите, чтобы сайт был доступен по сети Интернет с любого устройства по доменному имени — понадобиться его зарегистрировать. Сделать это можно у спец. регистраторов, например, Бегет / Рег-ру (и при усл., что ваше желаемое имя никем не занято!).
После регистрации доменного имени (покажу на примере Бегет и Рег-ру) — необходимо открыть управление DNS записями и создать запись вида «A 92.252.216.210» (разумеется, указать нужно свой внешний IP!). Т.е. мы этой операцией «говорим» какой IP открывать при обращении к домену!

Меняем A-запись в настройках DNS (у регистратора доменов или у DNS-хостинга)
Кстати, у Рег-ру нужно выбрать беспл. DNS серверы (их), а затем появится возможность добавить A-запись.

Рег-ру — указываем IP-адрес сервера, по которому будет открываться сайт
Затем останется подождать 15-60 мин. (обычно). Сначала при попытке открыть «наш» сайт по доменному имени будет появл. заглушка регистратора, но когда записи обновятся — предстанет сайт!
Важный момент: сайт перестанет открываться, когда провайдер изменит ваш внешний IP-адрес, либо вы выключите свой компьютер (на котором открыт Open Server).

Через 15 мин. сайт стал открываться по указанному IP — всё работает!
Установка движка (например, WordPress) в Open Server
ШАГ 6
1) Сначала потребуется загрузить движок сайта на ПК (обычно, это архив формата ZIP). Для примера я взял WordPress — офиц. сайт: https://ru.wordpress.org/download/releases/
2) Затем нужно запустить Open Server, нажать ПКМ по значку в трее и открыть PHPMyAdmin. См. пример ниже.
Прим.: логин root, пароль вводить не нужно!

Открываем настройки Open Server — PHPMyAdmin
3) После нужно создать базу данных, я для примера ввел «test1» и нажал кнопку «Создать» . См. ниже.

Создать базу данных (пользователь root, пароля нет)
4) Затем в папке «Domains» (она в каталоге с файлами Open Server) нужно создать папку с доменным именем вашего сайта и извлечь в нее архив с файлами движка WordPress (в моем случае путь получился таким: C:\openserver5.2\domains\testforme.site ).
У WordPress за подключение к БД отвечает файл «wp-config-sample.php» — переименовываем его в «wp-config.php» и открываем для редактирования!

Распаковываем файлы WordPress в папку-домен нашего сайта
5) В строку с «DB_NAME» указываем имя нашей созданной базы (в моем случае test1 ), в «DB_USER» вставляем root , а пароль в строке «DB_PASSWORD» оставляем не заданным. См. пример ниже.

Как выглядит открытый wp-config.php в блокноте — редактируем файл
6) Теперь, если открыть адрес нашего сайта в браузере (если вдруг не откроется — перезапустите Open Server!) , — появится приветственное меню с установкой WordPress. Осталось только дать имя сайту, ввести логин и пароль для доступа к админ-панели, и установить движок.

7) Сайт заработал на WordPress! Панелька появилась сверху — вы можете открыть ее для смены темы, добавления новостей и заметок, и пр.


На телефоне тоже открывается! Кстати, как только выключил ПК (на котором Open Server) — сайт сразу же перестал работать.
Итоги
ШАГ 7
В общем-то, рассмотренный вариант в заметке позволяет относительно просто и быстро развернуть свой сайт и дать доступ к нему пользователям из лок. сети и Интернет.
Однако, есть свои минусы, которые могут любое удобство и экономию превратить в прямо-противоположное:
- во-первых , нужен статический «белый» IP адрес (как правило, это отдельная услуга у вашего Интернет-провайдера. Иногда цена на него стоит дороже, чем арендовать платный хостинг/сервер);
- во-вторых , ПК с веб-сервером и сайтом должен работать 24 часа в сутки (либо посетители должны знать, когда на него заходить );
- в-третьих , желательно подкл. к двум Интернет-провайдерам, чтобы обеспечить бесперебойный доступ;
- в-четвертых , сайт желательно разместить на SSD накопителе (так он будет открываться быстрее);
- в-пятых , если у вас будет много посетителей, или сайт будет предлагать какую-то ресурсоемкую услугу — то ваш ЦП может начать «испытывать» высокую нагрузку. За ПК работать может стать не комфортно.
- в-шестых , вам нужно на регулярной основе следить за всем этим «добром»: чтобы Интернет работал, IP не менялись, ПК не перегревался (и работал 24 часа в сутки) и пр.
Взвесив все «За» и «Против» получается, что заниматься этим для экономии средств — практически бессмысленно (по крайней мере, во многих случаях).
Другое дело, если вам требуется сделать небольшой форум в лок. сети для друзей, или вы проводите испытания своего сайта перед «большим заплывом» — то почему нет?!
За сим откланяюсь, успехов!