关于docker stack部署服务,容器启动正常,端口也暴露出来了,但是容器内部服务可以正常返回结果,但是外部缺一直请求没反应的问题排查

作者在Mac上用Docker stack部署pdf2txt服务,本地调用无反应,容器内服务正常。经排查,发现是data_receiver服务启动了同样的pdf2txt容器,占用相同端口导致冲突。关闭data_receiver服务、重新部署后问题解决,提醒注意部署时端口冲突。

本人在mac上,用docker stack部署了一套起名为pdf2txt的服务,服务启动正常:

 但是在使用时,mac本地调用该服务却一直没反应,中间一直没报错,最后直到超时报了个超时的错误。很纳闷。。。然后就到该容器内部去使用同样的请求测试,发现容器内部服务正常。

上面这种问题,很大一部分是因为端口暴露存在问题。但是上图也显示,端口成功暴露出来了。

之后,仔细查看上图的服务列表,发现最上面的一个叫做data_receiver的服务也启动的有同样的pdf2txt容器,这么说,很有可能是因为同样的容器,占用同样的端口,导致后面启动的容器端口被占用,不能正常访问。

然后使用

docker stack rm data_receiver

关闭data_receiver服务

重新部署pdf2txt服务

测试上述想法,果然。。。是这个原因

所以,以后再遇到这种问题,建议注意端口是否冲突。除了部署同一个镜像会导致端口冲突,再部署不同的服务时,也有可能因为人为习惯的因素,导致端口冲突。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值