作者kevin76630 ()
看板Soft_Job
标题Re: [请益] docker容器连线不上问题PartII(悬赏1000p)
时间Sun Sep 8 16:26:48 2019
原文恕删 ripple大讲的基本对
下面补充一下depends_on 的议题
1F:→ MOONY135: 目前看logs我觉得应该是有相依的问题 mysql跟我的seed09/08 13:30
2F:→ MOONY135: db 同时被启动 应该是要等mysql完全动起来之後再去做see09/08 13:30
3F:→ MOONY135: d的事情 目前还在找怎样等待mysql被启起来09/08 13:31
4F:→ MOONY135: cobra我在本机上而不是DOCKER上运行的时候没问题09/08 13:35
在entrypoint.sh内测试连线mysql
有成功连线才下指令就可以了
不过逻辑建议转用python写
当然最偷懒的方式就是
Sleep 60啦
※ 编辑: ripple0129 (1.171.204.151 台湾), 09/08/2019 13:38:00
※ 编辑: ripple0129 (1.171.204.151 台湾), 09/08/2019 13:38:55
5F:→ MOONY135: 很想sleep 不过现在不急 想说多研究一点正规方式lol 09/08 13:40
docker的depends_on只管 container"被建立"的先後顺序
建起来就当作完成 他没有在管entrypoint有没有被执行完毕
也就是说在版主的例子中 rx0起来的时候mysql其实还在执行他的entrypoint
所以你会连不到资料库
其实也满合理的 因为docker只处理平台 他不去管你的业务逻辑
所以要在rx0的entrypoint等mysql的服务起来 用shell就可以了
until mysql -e '\q'
do
sleep 1
done
exec $@
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 110.50.132.3 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1567931210.A.42F.html
6F:→ MOONY135: 有被m的再多500p(税前)感谢分享 09/08 16:43
7F:→ MOONY135: 等我回家再给 09/08 16:43
8F:推 ssivart: 推 09/24 02:04