http.cors.enabled: true
http.cors.allow-origin: "*"
sudo docker ps 显示容器正常启动。但是利用curl localhost:9200 进行测试时显示拒绝连接。9200端口已转出。
在创建容器时也有-d
拒绝连接之后,容器会自动关闭,为什么啊!请求支援
如果使用 sudo docker ps 命令可以查看到容器正常启动,但是通过 curl localhost:9200 命令测试时无法连接,通常可能有以下原因:
容器绑定的地址不正确:默认情况下,Docker 容器会使用桥接网络进行通信,因此容器内部的服务监听的是容器内部的 IP 地址。如果在启动容器时没有指定 -p 参数映射到宿主机的端口,可以尝试在 Dockerfile 中指定容器内部服务绑定的 IP 地址,例如将服务绑定到 0.0.0.0 或 127.0.0.1 上。
容器端口没有正确映射到宿主机:在启动容器时,需要使用 -p 参数将容器的端口映射到宿主机的端口上,例如使用 docker run -d -p 9200:9200 IMAGE_NAME 命令。如果端口没有正确映射,无法通过宿主机访问到容器内的服务。
容器内服务没有正确启动:可以在容器内部运行命令 curl localhost:9200 查看服务是否正常启动,如果没有启动或启动失败,则可能需要检查容器内部的服务配置和日志输出。
防火墙或安全组设置阻止了请求:如果在启动容器后仍然无法访问容器内的服务,可以检查主机的防火墙或云服务器的安全组设置,确保端口未被阻止。
对于容器自动关闭的问题,可能也需要检查容器的输出日志,查看容器内部服务运行是否有异常或崩溃导致容器关闭。可以使用 docker logs CONTAINER_NAME 命令查看容器的输出日志。