V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kestrelBright
V2EX  ›  程序员

求教大佬们,容器怎么能直接调 idea 运行的 Java 接口?

  •  
  •   kestrelBright · 2022-10-14 13:13:00 +08:00 · 1673 次点击
    这是一个创建于 756 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有时需要改 go ,用 idea 运行 go ,然后容器环境需要调 go 的接口;有时又要改 java ,容器里调 java 接口。

    现在都需要打包,然后在 macos 下来跑,然后容器里用 host.docker.internal 才能访问

    每次改一点就要打包测试实在是太麻烦,请教有没有方法让容器可以直接访问 idea 运行的程序?

    9 条回复    2022-10-20 17:51:36 +08:00
    kchenzhi
        1
    kchenzhi  
       2022-10-14 13:20:06 +08:00
    直接用 IDEA 机器的 ip 加端口就能访问了啊
    kestrelBright
        2
    kestrelBright  
    OP
       2022-10-14 13:32:07 +08:00
    @kchenzhi 我这是 macOS ,容器里只能用 host.docker.internal 才能访问宿主机
    xuanbg
        3
    xuanbg  
       2022-10-14 13:45:45 +08:00
    你要是用的是 Mac 安装的 Docker desktop ,办法是有的,比较麻烦,我也忘记怎么搞了。因为我嫌他太麻烦,就改成装 Linux 的虚拟机,在虚拟机里面部署 Docker 容器了。容器只需要加上--network host 参数,用 localhost:post 就可以访问 mbp 上的服务。
    xuanbg
        4
    xuanbg  
       2022-10-14 13:48:20 +08:00
    @xuanbg 说错了,容器里使用 mbp 的 ip:post 就可以和 idea 进行联调了。
    toby1902
        5
    toby1902  
       2022-10-14 17:11:53 +08:00
    Bootis
        6
    Bootis  
       2022-10-14 17:16:48 +08:00
    Run/Debug Configuaration
    Application
    Run On: Docker
    Ayanokouji
        7
    Ayanokouji  
       2022-10-14 17:23:06 +08:00
    没太看懂,本地起这两个服务,相互测试不可以吗
    kestrelBright
        8
    kestrelBright  
    OP
       2022-10-14 17:57:14 +08:00
    emmm, 好像又可以了。。。怪事,之前非要打包出来用控制台跑。。。
    kestrelBright
        9
    kestrelBright  
    OP
       2022-10-20 17:51:36 +08:00
    靠 又出现了!改成 docker.for.mac.host.internal 作为 host 就可以了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1203 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:11 · PVG 02:11 · LAX 10:11 · JFK 13:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.