Amazon web services Jenkins:使用docker compose部署到AWS ECS

Amazon web services Jenkins:使用docker compose部署到AWS ECS,amazon-web-services,jenkins,docker-compose,amazon-ecs,Amazon Web Services,Jenkins,Docker Compose,Amazon Ecs,我有些误会。我有Jenkins实例、ESC集群和docker compose配置文件来组合图像和链接容器 git推送之后,我的Jenkins实例从所有repo(webapp、api、lb)获取所有源代码,并执行一批操作,如构建、复制文件等 之后,我将所有DockerFile处于“准备撰写”状态的文件夹 在这个阶段,我不知道我应该如何在AWS上ping我的ESC集群来获取Jenkins的所有图像,并用我的docker-compose.yml配置组合它们 我很乐意得到任何有用的信息 谢谢。首先,您需

我有些误会。我有Jenkins实例、ESC集群和docker compose配置文件来组合图像和链接容器

git推送之后,我的Jenkins实例从所有repo(webapp、api、lb)获取所有源代码,并执行一批操作,如构建、复制文件等

之后,我将所有DockerFile处于“准备撰写”状态的文件夹

在这个阶段,我不知道我应该如何在AWS上ping我的ESC集群来获取Jenkins的所有图像,并用我的docker-compose.yml配置组合它们

我很乐意得到任何有用的信息


谢谢。

首先,您需要将您的图像从Jenkins服务器推送到。将每个图像单独推送到独立的回购协议

接下来,您需要创建一个ECS集群。在这个集群中,您创建了一个在集群中运行的ECS服务。对于此服务,您可以创建并配置任务定义以运行链接容器。您不需要为此使用docker compose:在ECS中,您可以在配置中定义容器之间的链接。您可以在同一个任务定义中添加多个容器定义,ECS将它们链接在一起


您可以通过在Jenkins服务器上附加一个实例配置文件,使其能够调用ECS API,从而自动化所有这些。为了部署新映像,您只需将它们推送到ECR repo,创建指向它们的新任务定义,并更新运行这些任务定义的服务。ECS将自动代表您触发蓝绿色部署

我想知道答案。据我所知,esc cli compose命令可以将compose文件转换为任务定义。我的意思是,我希望使用一般方法编写清单,而不需要手动创建json格式的ecs任务定义。你觉得呢?啊哈,好吧,事情有点变了。我没有使用
ecs cli
api,但从中可以看出,它通过运行
ecs cli compose--project name hello world--file hello-world.yml service scale 2
创建了您所需的一切。不清楚该命令是否将图像推送到ECR,但我可以看到有一个
ecs cli push
命令。然后要检查两件事:1)您是否看到ECR中列出的任何图像?2) 任务定义json文件中图像的URI是什么样子的?