无法从docker容器连接到计算机的本地主机
我的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访问无法从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
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 < /代码>