Spring boot 码头工人--“网络主机”;不允许访问应用程序端口
我在docker中安装了Spring Boot应用程序,我运行的应用程序如下:Spring boot 码头工人--“网络主机”;不允许访问应用程序端口,spring-boot,docker,docker-networking,Spring Boot,Docker,Docker Networking,我在docker中安装了Spring Boot应用程序,我运行的应用程序如下: docker run --rm --network host --name myapp1 myapp 但当我试图从主机访问它时,它失败了: my_machine:~ root$ curl localhost:8081/someendpoint -v * Trying ::1... * TCP_NODELAY set * Connection failed * connect to ::1 port 8081
docker run --rm --network host --name myapp1 myapp
但当我试图从主机访问它时,它失败了:
my_machine:~ root$ curl localhost:8081/someendpoint -v
* Trying ::1...
* TCP_NODELAY set
* Connection failed
* connect to ::1 port 8081 failed: Connection refused
* Trying 127.0.0.1...
* TCP_NODELAY set
* Connection failed
* connect to 127.0.0.1 port 8081 failed: Connection refused
* Failed to connect to localhost port 8081: Connection refused
* Closing connection 0
curl: (7) Failed to connect to localhost port 8081: Connection refused
我不清楚为什么它不起作用?
它在docker内部工作良好。
此外,myapp与外部docker映像/互联网的连接没有问题。
请提供帮助。尝试
docker run-p 8081:8081--网络主机--名称myapp1 myapp
容器正在运行吗?运行docker ps
时,响应是什么?或者尝试docker exec-it myapp1 sh-c“curl localhost:8081
您通常不需要主机联网。删除--net host
选项,并添加-p 8081:8081
以发布服务的端口,是否可以改善情况?容器日志中是否有任何关于它在哪里启动的提示?嗨@silentsudo!在这种情况下,docker将忽略-p8081:8081部分,并使用host选项启动容器。Hi@adii!容器运行正常。SpringBoot应用程序可以从容器内部访问。