Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法从docker容器连接到计算机的本地主机_Docker_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Docker,elasticsearch" /> elasticsearch,Docker,elasticsearch" />

无法从docker容器连接到计算机的本地主机

无法从docker容器连接到计算机的本地主机,docker,elasticsearch,Docker,elasticsearch,我的GCP ES服务通过端口转发到我机器的localhost:9200。我能够从本地计算机记录摄取 我已经创建了JAVA脚本来完成同样的任务,当我运行local时,它也运行得很好 现在,我已经使用dockerFile创建了该Java项目的docker映像,当我创建一个容器时,我得到了以下错误 连接到本地主机:9200[localhost/127.0.0.1]失败:连接被拒绝(连接被拒绝) Docker命令: docker run-it--net=“host”gcplogingest:latest

我的GCP ES服务通过端口转发到我机器的localhost:9200。我能够从本地计算机记录摄取

我已经创建了JAVA脚本来完成同样的任务,当我运行local时,它也运行得很好

现在,我已经使用dockerFile创建了该Java项目的docker映像,当我创建一个容器时,我得到了以下错误

连接到本地主机:9200[localhost/127.0.0.1]失败:连接被拒绝(连接被拒绝)

Docker命令: docker run-it--net=“host”gcplogingest:latest mvn-f BEATLe/pom.xml test-Dcomponent=detect-DtestSuite=CommonXML/detect\u loginjectionGCP

注: 我尝试过使用--network=“host”,但仍然遇到相同的错误

请建议。

您是否尝试删除--net=host,然后在docker host.docker.internal中使用127.0.0.1

考虑一下,您的主机localhost应该不同于docker localhost,一旦您获得删除network=host,您就需要从docker访问

host.docker.internal:9200

您是否尝试过这样公开端口:
docker run-it--net=“host”-p 9200:9200 gcplogingest:latest mvn-f BEATLe/pom.xml test-Dcomponent=detect-DtestSuite=CommonXML/detect\u loginjectionGCP
我不熟悉logingest,但看起来您正在容器中运行logingest的测试套件,而不是实际应用?这真的是你想做的吗?docker容器是否继续运行,或者您是否在测试运行完成后退出控制台?@dravid..谢谢您的建议。我试过了,但还是犯了同样的错误。基本上,我想从容器与我的机器localhost交互inside@jishi我有一个Java程序,它接收运行在我的localhost:9200上的登录。我已经创建了该Java程序的映像,并通过上面共享的命令运行该映像。所以基本上我的Java程序是在试图连接到我的本地机器(MAc)localhost:9200的容器中运行的,但这没有发生。您是否尝试过删除
--net=host
,然后在docker host.docker.internal中使用127.0.0.1?考虑到您的主机本地主机应该与您的DOCKER本地主机不同,一旦您得到了删除网络=主机,您需要从DOCKER访问“代码>主机.DOKER。内部:9200 < /代码>