Приложение Bearcam Companion было практически готово к работе после моего последнего поста о Lambdas. Последним шагом (по крайней мере, для минимально жизнеспособного продукта) была публикация сайта. Неудивительно, что я выбрал AWS Amplify Hosting.

Хостинг AWS Amplify

Обзор того, как использовать Amplify для настройки хостинга для вашего сайта, представлен в Руководстве пользователя AWS Amplify. Для начала я использовал Amplify Console.

Подключиться к GitHub

Так как мой код уже есть в репозитории GitHub (как описано здесь), решил использовать непрерывный поток интеграции. В настройке я выбрал GitHub и подключил Amplify к своему репозиторию. Пока у меня есть только одна ветка и одна серверная часть (staging), поэтому я выбрал их. Настройки сборки были автоматически определены как для внешнего, так и для внутреннего интерфейса, поэтому я подтвердил их. После нажатия кнопки Сохранить и развернуть начался процесс сборки.

Процесс автоматической сборки

Процесс сборки проходит в 4 этапа:

  1. Предоставление — настраивает среду сборки на хосте по умолчанию.
  2. Сборка — клонирует репозиторий, развертывает серверную часть и создает внешний интерфейс.
  3. Развертывание — развертывание артефактов в управляемой среде размещения.
  4. Проверка — снимки экрана приложения визуализируются.

Первая сборка не удалась, потому что у меня не было aws-amplify в репозитории GitHub. я побежал

npm install aws-amplify

и зафиксировал изменение. Как только я отправил его на GitHub, процесс сборки Amplify запустился автоматически.

На этот раз сборка прошла успешно, и я смог просмотреть приложение по предоставленному URL-адресу: https://master.d7ijzylsc7qfm.amplifyapp.com/

История сборки и все подробности по каждому шагу доступны в консоли.

Каждый раз, когда я отправляю коммиты в основной репозиторий, запускается описанный выше процесс, заканчивающийся новым развертыванием сайта.

Пользовательский URL

URL-адрес по умолчанию не очень удобен для пользователя. Я хочу, чтобы веб-приложение появилось как часть проекта BearID (http://bearid.org/). В частности, я хочу настроить его на app.bearid.org.

Для этого я следовал разделу Настройка личных доменов руководства пользователя Amplify. По сути, вам нужно добавить несколько DNS-записей везде, где управляется ваш домен. В моем случае мне пришлось добавить 2 записи CNAME. Первая запись сопоставляет поддомен (приложение) с URL-адресом приложения Amplify по умолчанию выше. Вторая запись указывает на сервер проверки AWS Certificate Manager (ACM), который включает TLS и, следовательно, https. Наконец, я настроил субдомен вперед, чтобы все обращения к моему URL-адресу направлялись в приложение Amplify.

После завершения настройки мне пришлось ждать несколько часов, пока все записи распространятся и завершится настройка SLL:

После завершения шага активации домена, описанного выше, я могу просматривать Bearcam Companion по адресу https://app.bearid.org/.

Заключение

В этом посте я рассказал о размещении моего приложения с помощью Amplify, подключении его к моему репозиторию GitHub для автоматического развертывания и настройке пользовательского URL-адреса. И снова Amplify максимально упростил этот процесс.

Если вы обнаружите, что смотрите Камеру Brooks Falls Brown Bears на Explore.org и вам интересно узнать, кто есть кто, зарегистрируйтесь и войдите в Bearcam Companion. Если вы уже знаете медведя реки Брукс, войдите в систему и помогите нам маркировать изображения!

Первоначально опубликовано на https://dev.to 4 сентября 2022 г.