我有一个包含4种容器的多容器Elastic Beanstalk应用程序。其中一个容器是scrapinghub/splash
,其设计方式是可以设置容器应关闭的最大内存限制,然后使用restart: always
策略运行该容器,再来一次。
根据我在Dockerrun.aws.json
语法中看到的内容,没有什么要定义的常规docker-compose重新启动策略。根据我在其他资源上发现的内容,推荐的方法是创建ECS服务,以在任务失败时重新启动任务。
但是-请注意,我不想重新启动包括所有容器的整个任务,我只想重新启动其中一个容器。如果我重新启动整个任务,则所有其他工作进程将停止运行。
那我该怎么做呢?如何确保一旦关闭容器,容器又会重新启动-无需重新启动或重新部署整个任务?就像普通的docker-compose重新启动策略设置一样。
答案 0 :(得分:1)
在此处的文档中:https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_docker.html
说明如下:
如果在Elastic Beanstalk环境中运行的Docker容器崩溃或因任何原因被杀死,则Elastic Beanstalk会自动重新启动它。
因此,如果我理解正确,则默认情况下重启策略将始终设置为
答案 1 :(得分:0)
像往常一样不支持甚至不回答beantalk。所以也许是搬到EKS(作为k8s supports it)的另一个原因