打包好的docker镜像如何在启动容器前进行测试

查看:139
本文介绍了打包好的docker镜像如何在启动容器前进行测试的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

项目在docker容器集群上跑, 每次部署会干掉旧容器, 然后根据打包好的新镜像启动容器.
这里有个严重的问题, 就是如果新的镜像出现问题, 旧容器又被干掉, 会导致业务无法访问.
请问是否有办法将打包的镜像先测试能否正确启动容器?

解决方案

集群像docker swarm,当升级容器镜像时,先启动新的容器,等新的容器正常启动后,再停止旧容器。
Docker启动容器时,如果容器里的命令能正常启动,就会认为容器启动正常。docker swarm随即会停止旧容器。
但是有些业务不是说容器里的进程启动成功就表示业务正常了,这个时候可以使用Dockerfile中的healthcheck指令来自定义检查业务健康的命令,只有这个命令返回结果为0时才认为容器启动正常,这样swarm才停止旧容器。https://docs.docker.com/engin...

这篇关于打包好的docker镜像如何在启动容器前进行测试的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆