Хостинг — это компьютер в дата-центре, который работает круглосуточно и показывает ваш сайт всем, кто его открывает. В этом шаге выберем такой компьютер и выложим на него сайт так, чтобы обновления ничего не ломали.

Какой сервер нужен

Для сайта, сделанного своим кодом, подходит облачный сервер — его ещё называют VPS. Это ваш личный виртуальный компьютер у провайдера: вы сами решаете, что на нём запускать.

  • Российское облако, если ваши читатели в России: сайт быстрее открывается, а персональные данные хранятся по российским правилам.
  • Небольшой тариф для начала. Сайту услуг, блогу или сайту с онлайн-записью хватит самого скромного сервера. Онлайн-сервису с личными кабинетами и расчётами со временем может понадобиться больше памяти — тариф можно повысить, не переезжая.
  • Резервные копии и хранилище для картинок у того же провайдера — удобно, всё в одном месте.

Как это сделано у меня

Блог работает в Timeweb Cloud, на том же сервере, что и мой продукт Квартум: 4 ядра, 8 ГБ памяти, 80 ГБ диска. По прайсу Timeweb такой сервер стоит около 2 000 ₽ в месяц. Но для одного блога это много: начинать можно с тарифа в несколько раз дешевле. Блог живёт на сервере отдельным проектом, со своей базой, и не мешает Квартуму. Картинки и резервные копии лежат в хранилище S3 у того же провайдера — для блога это от рубля до нескольких десятков рублей в месяц.

Если выбираете, где разместить сайт, — вот моя реферальная ссылка на Timeweb Cloud.

Схема: код в GitHub, автоматические проверки, сборка контейнера, сервер скачивает и запускает его; откат — прежний номер версииОткрыть схему в полном размере
Сервер только скачивает готовую версию — поэтому обновления не ломают сайт

Как сайт попадает на сервер

Самая частая ошибка новичков — собирать сайт прямо на сервере. Однажды сборка падает посреди обновления, и сайт лежит. Надёжнее так:

  • Код хранится в GitHub. Когда вы выпускаете новую версию, GitHub сам собирает готовый «контейнер» — упакованный сайт со всем нужным внутри.
  • Сервер только скачивает готовый контейнер и запускает его. На нём ничего не собирается.
  • Новая версия выкладывается только после зелёных проверок — автоматических тестов, которые написал ИИ.
  • Откат — одна команда: вернуть прежний номер версии. Если что-то пошло не так, через минуту всё работает как раньше.

У меня обновление — это три команды, которые я копирую из инструкции. Писать их по памяти не нужно.

Промпт · Для ИИ-помощника
Подготовь сайт к размещению на моём сервере [провайдер, тариф]. Нужно: обновление новой версии одной-двумя командами, откат на прежнюю версию, на сервере ничего не собирать. Напиши инструкцию в docs/operations.md простым языком и объясни, что мне нужно сделать руками.

Что дальше

Сайт в интернете и открывается по вашему адресу. Прежде чем звать посетителей, сделаем его надёжным: замок HTTPS, резервные копии и базовая защита.