Установка Ghost CMS CloudApp в Yandex Cloud
С помощью этого руководства вы установите и настроите Ghost CMS
Чтобы установить Ghost CMS:
- Подготовьте облако к работе.
- Настройте DNS-зону.
- Установите Ghost CMS CloudApp.
- Настройте Ghost CMS.
- Проверьте результат.
Если созданные ресурсы вам больше не нужны, удалите их.
Подготовьте облако к работе
Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:
- Перейдите в консоль управления
, затем войдите в Yandex Cloud или зарегистрируйтесь. - На странице Yandex Cloud Billing
убедитесь, что у вас подключен платежный аккаунт, и он находится в статусеACTIVEилиTRIAL_ACTIVE. Если платежного аккаунта нет, создайте его и привяжите к нему облако.
Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака
Подробнее об облаках и каталогах.
Убедитесь, что в выбранном каталоге есть облачная сеть с подсетью хотя бы в одной зоне доступности. Для этого на странице каталога выберите VPC. Если в списке есть сеть, нажмите на её имя, чтобы увидеть список подсетей. Если нужных подсетей или сети нет, создайте их.
Необходимые платные ресурсы
В стоимость поддержки создаваемой инфраструктуры входят:
- плата за использование виртуальной машины (см. тарифы Yandex Compute Cloud);
- плата за использование публичной DNS-зоны и за публичные DNS-запросы (см. тарифы Yandex Cloud DNS);
- плата за хранение данных на диске (см. тарифы Yandex Compute Cloud);
- плата за использование S3-бакета для хранения медиафайлов (см. тарифы Object Storage).
Настройте DNS-зону
Перед установкой Ghost CMS вам необходимо создать публичную DNS-зону и делегировать на неё домен. Подробнее о делегировании домена читайте в инструкции.
-
В консоли управления
выберите каталог, в котором хотите создать зону DNS. -
В списке сервисов выберите Cloud DNS.
-
Нажмите кнопку Создать зону.
-
Задайте настройки зоны DNS:
- Зона — укажите ваш зарегистрированный домен, например
example.com.(с точкой в конце). - Тип — выберите
Публичная. - Имя — укажите имя зоны, например
example-zone.
- Зона — укажите ваш зарегистрированный домен, например
-
Нажмите кнопку Создать.
-
Делегируйте домен на серверы Yandex Cloud. Для этого в личном кабинете вашего регистратора доменных имен укажите адреса DNS-серверов
ns1.yandexcloud.netиns2.yandexcloud.net.Делегирование происходит не сразу. Серверы интернет-провайдеров обновляют записи до 24 часов. Проверить делегирование домена можно с помощью сервиса Whois
или утилитыdig:dig +short NS example.comРезультат:
ns2.yandexcloud.net. ns1.yandexcloud.net.
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
-
Создайте публичную зону DNS:
yc dns zone create \ --name example-zone \ --zone example.com. \ --public-visibilityГде
--zone— имя вашего домена, напримерexample.com.. Значение параметра--zoneдолжно заканчиваться точкой.Результат:
id: dns39gihj0ef******** folder_id: b1g681qpemb4******** created_at: "2024-09-09T15:23:34.919887Z" name: example-zone zone: example.com. public_visibility: {}Подробнее о команде
yc dns zone createчитайте в справочнике CLI. -
Делегируйте домен на серверы Yandex Cloud. Для этого в личном кабинете вашего регистратора доменных имен укажите адреса DNS-серверов
ns1.yandexcloud.netиns2.yandexcloud.net.Делегирование происходит не сразу. Серверы интернет-провайдеров обновляют записи до 24 часов.
Чтобы создать публичную зону DNS, воспользуйтесь методом REST API create для ресурса DnsZone или вызовом gRPC API DnsZoneService/Create.
Делегируйте домен на серверы Yandex Cloud. Для этого в личном кабинете вашего регистратора доменных имен укажите адреса DNS-серверов ns1.yandexcloud.net и ns2.yandexcloud.net.
Установите Ghost CMS CloudApp
Установите Ghost CMS с помощью Cloud Apps:
-
В консоли управления
выберите каталог, в котором хотите установить приложение. -
В списке сервисов выберите Cloud Apps.
-
Нажмите кнопку Установить приложение.
-
В открывшемся окне выберите приложение Ghost CMS.
-
Заполните параметры установки:
Примечание
Обязательные параметры:
- Подсеть (Параметры хоста)
- Идентификатор DNS зоны (Параметры хоста)
Остальные параметры опциональны или имеют значения по умолчанию.
Общие параметры:
- Настройки приложения — укажите название приложения и описание (опционально).
- Сервисный аккаунт — выберите сервисный аккаунт, от имени которого будет происходить установка приложения. Если у вас нет сервисного аккаунта, создайте его.
Параметры хоста:
- Подсеть — выберите подсеть VPC, в которой будет развернута виртуальная машина. Обязательно.
- Идентификатор DNS зоны — выберите DNS-зону из списка. Обязательно. Поддомены будут созданы внутри выбранной DNS-зоны.
Параметры доменов:
- Поддомен сайта — укажите поддомен внутри выбранной DNS-зоны, на котором будет доступен основной сайт. Домен сайта будет вычислен путём добавления поддомена к домену DNS‑зоны.
- Поддомен админ панели — укажите поддомен внутри выбранной DNS-зоны для доступа к административной панели Ghost CMS. По умолчанию
admin. Домен административной панели будет вычислен добавлением поддомена к домену DNS-зоны. Административная панель будет доступна по адресуhttps://<поддомен-админ-панели>.<домен-днс-зоны>/ghost. - Поддомен админ панели базы данных — укажите поддомен внутри выбранной DNS-зоны для доступа к административной панели базы данных. По умолчанию
db. Домен административной панели базы данных будет вычислен добавлением поддомена к домену DNS-зоны. - Отправитель почты — укажите адрес электронной почты, от имени которого будут отправляться уведомления (например, о смене пароля или регистрации). По умолчанию используется
noreply@<домен_сайта>.
Параметры виртуальной машины:
- Количество vCPU — укажите количество виртуальных процессоров. По умолчанию:
2. - Объем RAM в GB — укажите объем оперативной памяти. По умолчанию:
2. - Гарантированная доля vCPU — укажите гарантированную долю процессорного времени (20, 50 или 100). По умолчанию:
100. - Публичный SSH ключ — укажите публичный SSH-ключ для доступа к виртуальной машине. Если ключ указан, он будет добавлен в
authorized_keysпользователяghost. Это опциональное поле.
Параметры диска:
- Тип диска — выберите тип диска. По умолчанию:
network-ssd. - Размер диска в GB — укажите размер диска. По умолчанию:
20.
Параметры базы данных:
- ID секрета с паролем БД — укажите идентификатор секрета из Yandex Lockbox, содержащего пароль для базы данных по ключу
db_password. Если секрет не указан, будет сгенерирован случайный пароль, значение которого можно будет найти в автоматически созданном секрете. - ID секрета с root паролем БД — укажите идентификатор секрета из Yandex Lockbox, содержащего пароль для root-пользователя базы данных по ключу
db_root_password. Если секрет не указан, будет сгенерирован случайный пароль, значение которого можно будет найти в автоматически созданном секрете.
-
Нажмите кнопку Установить.
Установка приложения займет 5–10 минут. В процессе установки будут созданы следующие ресурсы:
- сервисный аккаунт;
- секреты для хранения паролей и ключей доступа;
- права доступа для сервисного аккаунта;
- публичный IP-адрес для виртуальной машины;
- группа безопасности для виртуальной машины;
- диск для хранения данных;
- записи в DNS-зоне для поддоменов сайта, административной панели и административной панели БД;
- S3-бакет для хранения медиафайлов (изображения, GIF-анимации и другие файлы, загружаемые на сайт).
Примечание
Загрузка видеофайлов в S3‑бакет невозможна ввиду ограничений, наложенных используемым плагином для работы с объектным хранилищем.
- виртуальная машина с установленным Ghost CMS.
После создания всех ресурсов на виртуальной машине будет происходить настройка сайта и выпуск TLS-сертификатов. Дождитесь завершения установки.
Примечание
При установке приложения автоматически создаются адрес Yandex Cloud Postbox и DNS-запись для его верификации.
Настройте Ghost CMS
После успешной установки приложения настройте Ghost CMS:
-
Откройте в браузере адрес административной панели:
https://<поддомен-админки>/ghost(где<поддомен-админки>— поддомен, который вы указали при установке, или поддомен сайта, если поддомен административной панели не был указан). -
Заполните форму регистрации администратора:
- Название сайта — укажите название вашего сайта.
- Имя — укажите ваше имя.
- Email — укажите адрес электронной почты для входа в административную панель.
- Пароль — создайте надежный пароль для входа в административную панель.
-
Нажмите кнопку Создать аккаунт и запустить сайт.
-
После регистрации вы будете перенаправлены в административную панель Ghost CMS, где сможете начать работу с сайтом.
Проверьте результат
Убедитесь, что Ghost CMS работает корректно:
-
Откройте в браузере поддомен основного сайта, который вы указали при установке. Вы должны увидеть главную страницу Ghost CMS.
-
Создайте тестовый пост:
- В административной панели нажмите кнопку New post (или Новый пост, если интерфейс переведен на русский язык).
- Заполните заголовок и содержимое поста.
- Загрузите изображение в пост — оно автоматически сохранится в S3-бакете.
- Опубликуйте пост.
-
Проверьте, что пост доступен на главной странице сайта.
-
Проверьте работу почтовых уведомлений:
- В административной панели перейдите в раздел настроек.
- Попробуйте восстановить пароль, используя функцию «Забыли пароль?».
- Проверьте, что письмо с инструкциями по восстановлению пароля пришло на указанный адрес электронной почты.
Примечание
Интеграция с Yandex Cloud Postbox поддерживает регистрацию пользователей и восстановление пароля. Массовые рассылки через Yandex Cloud Postbox не поддерживаются, так как для них требуется специальный API.
-
(Опционально) Если вы указали домен для административной панели БД, откройте его в браузере:
- Войдите в административную панель базы данных.
- Для входа используйте:
- Сервер —
db. - Движок —
MySQL. - Имя пользователя —
ghost. - Пароль — пароль базы данных. Значение пароля можно найти в секрете, который был автоматически создан при установке приложения. Имя секрета содержит
db-passwords-secret.
- Сервер —
Как удалить созданные ресурсы
Чтобы остановить работу и перестать платить за созданные ресурсы:
-
Удалите установленное приложение Ghost CMS:
- В консоли управления
выберите каталог, в котором установлено приложение. - В списке сервисов выберите Cloud Apps.
- Найдите установленное приложение Ghost CMS в списке.
- Нажмите на значок
рядом с приложением и выберите Удалить. - Подтвердите удаление приложения.
Важно
При удалении приложения автоматически не удаляются:
- адрес Yandex Cloud Postbox, созданный при установке;
- DNS-запись для верификации Yandex Cloud Postbox.
Эти ресурсы необходимо удалить вручную.
- В консоли управления
-
При необходимости удалите публичную DNS-зону.
-
При необходимости удалите адрес Yandex Cloud Postbox и связанные с ним DNS-записи.