Добавление второй службы с AWS Copilot

Я хорошо знаком с тем, как делать все эти (довольно утомительные) вещи вручную с помощью ECS.

Я экспериментирую с Copilot - он действительно работает - у меня очень легко создать одну службу, но в моем решении есть несколько служб / контейнеров.

Как мне теперь добавить в свой кластер вторую службу / контейнер?

1 ответ

Решение

Краткий ответ: перейдите в каталог кода второй службы и запустите copilot initочередной раз! Если вам нужно указать другой файл докеров, вы можете использовать --dockerfileфлаг. Если вам нужно использовать существующее изображение, вы можете использовать --image с именем существующего реестра контейнеров.

Длинный ответ: Copilot хранит метаданные в хранилище параметров SSM в учетной записи, которая использовалась для запуска copilot app init или же copilot init, так что пока вы не меняете учетные данные AWS, которые используете при запуске Copilot, все должно работать только при запуске copilot init в новом репозитории.

Некоторые другие варианты использования:

Если это существующее изображение, такое как redis или postgres, и вам не нужно ничего настраивать в фактическом изображении или открывать его, вы можете запустить

copilot init -t Backend\ Service --image redis --port 6379 --name redis

Если ваша служба находится в отдельном репозитории кода и нуждается в доступе к Интернету, вы можете cd в этот каталог и запустить

copilot init --app $YOUR_APP_NAME --type Load\ Balanced\ Web\ Service --dockerfile ./Dockerfile --port 1234 --name $YOUR_SERVICE_NAME --deploy

Так что все, что вам нужно сделать, это запустить copilot init --app $YOUR_APP_NAME с теми же учетными данными AWS в новом каталоге, и вы сможете настроить и развернуть свои вторые сервисы.

Copilot также позволяет настроить постоянное хранилище, связанное с данной службой, с помощью copilot storage initкоманда. Это указывает новую таблицу DynamoDB или корзину S3, которая будет создана при запуске copilot svc deploy. Он создаст одно дополнение хранилища для каждой среды, в которой вы развертываете службу, чтобы не смешивать тестовые и производственные данные.

Другие вопросы по тегам