如何使用docker-compose从docker容器连接到localhost:9092而不使用docker bridge

weixin_38058939 2019-09-12 01:50:34
我在端口9092上的本地计算机上运行Kafka服务器.我正在使用docker-compose在docker容器中运行一个服务,它需要向kafka服务器发送消息. 我尝试使用’localhost’和IP在服务代码中编写我的生产者,但两者都不起作用. 任何人都可以帮我解决这个问题吗?
...全文
410 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38061073 2019-09-12
  • 打赏
  • 举报
回复
使用docker-compose: 使用network_mode选项允许连接到localhost端口 network_mode: "host" 没有docker-compose: 使用–net标志允许连接到localhost端口 docker run -it --net=host 您还可以使用–network标志 --network="host" 根据官方Docker文档,这些“使容器可以完全访问本地系统服务,例如D-bus,因此被认为是不安全的.” 当然,如果你容纳了在localhost:9092上运行的服务,那么你也可以在Docker容器中运行它,并使用–link标志将两个Docker容器链接在一起: docker run -t -d myService docker run -t -d --link myService:myService_ref myOtherService

430

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧