bash – 如何检测docker运行是否成功编程?
发布时间:2020-12-15 16:24:28 所属栏目:安全 来源:网络整理
导读:我写了一个非常简单的bash脚本,以快速检查我的容器仍然生成和启动正确,内部的应用程序响应请求。 有时docker运行失败,例如。因为我试图绑定容器的端口已经分配。但是当发生这种情况docker run的退出代码仍然是0,所以我不能使用退出代码。如何以编程方式
我写了一个非常简单的bash脚本,以快速检查我的容器仍然生成和启动正确,内部的应用程序响应请求。
有时docker运行失败,例如。因为我试图绑定容器的端口已经分配。但是当发生这种情况docker run的退出代码仍然是0,所以我不能使用退出代码。如何以编程方式检查容器是否正确启动? 我正在考虑的解决方案是: >解析输出的错误 但这些似乎有点过分和丑陋。我缺少一个更好的方法来检查docker运行是否成功?
正如AbelMui?o在评论中建议的,这可能已经在更新的Docker版本中修复(我目前运行0.9.1)。
但是,如果你暂时陷入像我这样的旧版本,我找到一个体面的解决方法来检查容器是否通过使用docker检查启动。 docker inspect返回一个JSON对象,其中包含有关容器的很多信息,特别是容器当前是否正在运行。 -f标志可以让您轻松提取所需的位: docker inspect -f {{.State.Running}} $CONTAINER_ID 将返回true或false。 注意,你可能想要睡眠1(或更多)之间启动容器,并检查它是否。如果您的设置有问题,它可能会在实际退出之前显示为“运行”很短的时间。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |