我有容器 A,此容器保存我的代理服务,该服务传递消息并创建一个套接字,我的其他服务连接到该套接字,然后向其发送消息。
我遇到一个问题,容器 A 必须在容器 B 和 C 之前运行,否则它们无法连接到套接字。
在 ECS/Fargate 中,如果容器 A 宕机,或者容器 A 重新启动,是否可以告诉容器 B 和 C 重新启动,以告诉 B 和 C 重新部署,以便应用程序再次启动并可以成功连接到套接字。
在 docker-compose 中,我可以在设置中使用 dependent_on,ECS/Fargate 有类似的东西吗?
我尝试添加
"dependsOn": [
{
"containerName" : "containerA",
"condition" : "HEALTHY"
}
]
对于我的任务定义,但它提示找不到容器。我的容器都位于单独服务的单独任务定义中。
最佳答案
是的,AWS ECS 中有一个类似的功能,称为容器依赖。
https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerDependency.html
为容器启动和关闭定义的依赖项。一个容器可以包含多个依赖项。当为容器启动定义依赖关系时,为容器关闭定义依赖关系则相反。
关于amazon-web-services - 取决于 Fargate ECS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61579624/