首页 > 服务器运维 > 服务器配置

docker设置容器依赖关系

服务器配置 服务器配置 2020-09-14 0 docker 容器 服务器

docker设置容器依赖关系怎么做?一个稍微复杂点的项目,肯定不是一个单独的程序可以解决的,必定是许多程序组合起来的一个整体,它们之间存在一定的依赖关系。比如:nginx依赖web应用服务器tomcat,tomcat中的应用依赖mysql数据库和zookeeper配置,tomcat中的应用可能互相依赖等。4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

如果人工去启动多个应用,肯定是等被依赖的服务准备好之后,再去启动下一个应用/服务;但是想要服务器自动启动,就要靠脚本来检测被依赖的服务是否准备好,然后按顺序启动之后的应用/服务。4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

docker 容器部署方式(将各个应用部署到单独的容器中)4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

docker容器通过服务编排(docker-compose)的方式启动时,可以通过==depends_on==来配置被依赖容器,待被依赖的容器启动之后,才启动当前的容器。4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

但隐含的问题是:容器启动之后,容器中的应用不一定可以准备好,这中间会有时间间隔。为解决这个问题,我们必需判断具体的应用是否启动好了。4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

通过dockerize 工具来判断4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

在解决服务依赖问题上使用dockerize:4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

在docker-compose.yaml各个服务的command中的配置如下:4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

command:["dockerize","-wait","tcp://zookeeper:2181","-wait","tcp://mysql:3306","-wait","http://apphost:8080","-timeout","1800s","/usr/bin/supervisord"]

选项说明:4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

-wait <protocol://host:port>4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

-wait 参数可以添加多个,代表依赖多个服务4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

-timeout 1800s4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

-timeout 后面跟持续等待的秒数,默认是10秒4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

最后一个命令是各依赖服务准备好之后要执行的命令,也就是当前应用启动的命令4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

支持的协议有:file, tcp, tcp4, tcp6, http, https and unix4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

本站推荐知识阅读:《docker 镜像和容器的关系》4ev香港云服务器_物理独立服务器_VPS虚拟主机免费备案、租用测评、优惠排名 - VPS巴士

版权声明

本文内容由互联网用户自发贡献,版权归用户所有,本站不为本文内容承担相关法律责任。如有侵犯您的合法权利,请联系本站进行删除。

上一篇:Mac 下安装pip
留言与评论(共有 条评论)

   
验证码:

VPS巴士

统计代码 | 京ICP1234567-2号

Powered By VPS巴士

使用手机软件扫描微信二维码

关注我们可获取更多热点资讯