我现在正在测试web服务的可用性,这是一个Java Spring Boot程序。当我在本地运行它并使用curl获取响应时,无论成功与否,它都会显示状态代码:
curl -I localhost:8080/xxx
返回结果:
HTTP/1.1 200
Content-Type: text/plain;charset=UTF-8
Content-Length: 0
Date: Mon, 01 Feb 2021 11:49:57 GMT
但是当我尝试在docker swarm中测试它时,它不能访问外部的web服务表单,目前我只能测试容器内部的web服务:
docker exec -it [ID] /bin/sh
curl -I localhost:8080/xxx
HTTP/1.1 200
Content-Type: text/plain;charset=UTF-8
Content-Length: 0
Date: Mon, 01 Feb 2021 11:53:07 GMT
这是我的docker命令,它用来初始化swarm:
docker swarm init --advertise-addr=127.0.0.1 --listen-addr 127.0.0.1
docker service create --replicas 1 -p 8088:8080 --name webtest --mount source=afdiavol,target=/ia_ai_ms bility/aia:2.0.3.6t
有人知道如何在docker群中卷曲web服务吗?
发布于 2021-02-01 16:00:17
在docker swarm init命令中,将侦听和通告地址设置为环回接口的地址。您可以尝试使用广播地址0.0.0.0进行部署。
docker swarm init --advertise-addr=0.0.0.0 --listen-addr 0.0.0.0
https://stackoverflow.com/questions/65988918
复制相似问题