Я хочу разработать и разместить свое портфолио в Azure, так как у меня есть бесплатные деньги каждый месяц благодаря программе MSP.
В моем портфолио будет 3 услуги:
Одним из важных требований является CI / CD: мне нужно иметь возможность запускать автоматическое развертывание при изменении главной ветки моего репозитория github (например, когда я объединяю ветку в мастер).
Кроме того, производительность здесь не очень важна, я не размещаю здесь Facebook, ха-ха.
Мои вопросы:
Хорошо, первый выбор - как вы хотите упаковать свои приложения, контейнеры или нет. Использование контейнеров может упростить разработку и развертывание ваших приложений, но если у вас нет опыта работы с контейнерами, это будет крутой кривой обучения.
Если вы все же решите использовать контейнеры, у вас есть три варианта в Azure:
Судя по всему, вам не нужны функции, которые предоставляет Kubernetes, поэтому я бы избегал дополнительных сложностей, которые это приносит. Экземпляры контейнеров Azure подойдут вам, но они действительно предназначены для обработки пакетных рабочих нагрузок, а не для круглосуточных служб, поэтому цены могут быть не такими, как вы хотите. Самым простым вариантом может быть использование веб-приложений. Вы можете запускать свои контейнеры, не беспокоясь о базовой инфраструктуре, и он поддерживает рабочие нагрузки с несколькими контейнерами - https://docs.microsoft.com/en-us/azure/app-service/containers/tutorial-multi-container-app
Если вы не хотите идти по контейнерному маршруту, тогда вы смотрите на более традиционные услуги хостинга. Это ограничит вас следующими возможностями: 1. Веб-приложения Azure (без контейнеров) 2. Виртуальные машины Azure Маршрут виртуальной машины Azure должен быть настроен и управляться самостоятельно, поэтому это не идеально. Опять же, я бы, наверное, посмотрел на веб-приложения.
Я не упоминал базы данных, я настоятельно рекомендую вам взглянуть на предложения Azures Database as a Service, будь то SQL, MYSQL, PostgreSQL и т. Д. Запуск БД в контейнере - это не то, что я бы посоветовал.