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中安装了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 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应用程序可以从容器内部访问。