Рубрики
Uncategorized

Развернуть приложение Dockerized в AWS ECS с новым новым VPC.

После того, как в течение нескольких дней боролись за развертывание применения в ECS, обнаружили решение и SIM … Tagged с AWS, DevOps, ECS, Fargate.

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

Этот пример предназначен для развертывания приложения с новым новым VPC. VPC будет создан во время развертывания ECS/Fargate.

git местоположение

https://github.com/rajeshkumarbehura/vpc_ecs_app_deploy

Требование приложение для развертывания в AWS ECS

  1. Проект должен заставить. В моем репо папку с демо-приложением, которая является простым применением на основе NESTJS. Вы можете сделать Java/Nodejs/Python любой проект, если он станет докеризован.
  2. AWS CLI & Terraform CLI должен быть установлен в вашей командной строке.

    AWS --версия Terraform --версия

  3. Детали AWS должны быть avaialble экспорт Экспорт Экспорт-Юго-восток-1 Экспорт//dev Profile должен совпадать в файле Terraform/Providers.ts

  4. Это создаст свежий новый VPC для развертывания ECS/Fargate.

  5. После успешного развертывания Terraform напечатает путь Альба как

demoapp_alb_hostname-demoapp-XXXXXXX.ap-southeast-1.elb.amazonaws.com

Шаги для развертывания

Клонировать проект в свой местный житель.

а Проверить профиль AWS

экспорт

Это имя профиля DEV должно соответствовать Deploy/Terraform/Provider.tf

# Specify the provider and access details
provider "aws" {
  shared_credentials_file = "$HOME/.aws/credentials"
  profile                 = "dev"
  region                  = var.aws_region
}
беременный Обновить файл скрипта оболочки

В папке развертывания существуют два файла скрипта оболочки.

  1. CREATE_REPO_IN_ECR.SH: Обновить данные профиля AWS в этом файле. Этот файл создаст репозиторий AWS ECR для Project. И распечатать ссылку после успешного создания. Например — Xxxxxx.dkr.ecr.ap-southeast-1.amazonaws.com/demo_app_repo

Это ECR_REPO_PATH для вашего проекта.

  1. push_image_to_ecr _ & _ deploy_ecs.sh: Обновите данные профиля AWS и ECR_REPO_PATH. Этот файл будет следовать ниже шага.
    • Создать контейнер Docker,
    • контейнер будет помечен для ECR Repo,
    • протолкнуть в репозиторий ECR
    • Приложение развернуто в AWS ECS от ECR.
в Исполнение

Теперь в последних шагах, после обновления вышеупомянутых деталей, перейдите в Deploy Polder в командной строке.

  1. Запустите файл create_repo_in_ecr.sh для создания репо.
  2. Запустите push_image_to_ecr _ & _ deploy_ecs.sh для развертывания приложения
дюймовый Уничтожить в AWS

Очистка или удаление всех ресурсов из AWS, используйте ниже шаги-

  1. Перейдите в расположение папки Deploy/Terraform в командной строке и запустите ниже команду
terraform destroy 

Как развернуть собственное приложение

  1. Замените свое приложение внутри контента Demo-App и убедитесь, что ваше приложение работает. Пожалуйста, не меняйте демо-приложение
  2. Создайте API проверки здоровья — API/Index. Это настроено внутри файла Terraform/variable.tf в папке Terraform

переменная «demoApp_health_check_path» { }

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

Играйте с Terraform, ECR & ECS, чтобы узнать больше.

Оригинал: «https://dev.to/rajeshkumarbehura/deploy-dockerized-app-in-aws-ecs-in-new-vpc-3f9c»