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

如何在 docker 中热加载 Java 服务

  •  
  •   fyeeme · 2019-12-07 21:45:25 +08:00 · 5156 次点击
    这是一个创建于 1848 天前的主题,其中的信息可能已经有所发展或是发生改变。

    需求是这样的:

    做一个 java 服务端的 api, sdk 依赖于 linux 环境,工作环境是 macos,想把服务部署到 docker ( ubuntu )中。 开发在 macos 中进行,使用 spring boot 开发,有没有办法让服务在 docker 实时编译?

    7 条回复    2020-07-25 17:05:15 +08:00
    fyeeme
        1
    fyeeme  
    OP
       2019-12-07 21:46:36 +08:00
    如果在 macos 中安装虚拟机使用 ubuntu 开发有点卡了,所以想使用 docker,有没有什么办法?
    whileFalse
        2
    whileFalse  
       2019-12-08 08:05:44 +08:00
    本地编译,把本地目录 /文件映射进去。
    conn4575
        3
    conn4575  
       2019-12-08 09:31:55 +08:00 via Android
    mac 上的 docker 也是跑在虚拟机上的,没差别
    fmumu
        4
    fmumu  
       2019-12-08 13:39:04 +08:00 via Android
    本地开发编译,目录映射,docker 中用 jrebel 之类的热加载方案启动
    fyeeme
        5
    fyeeme  
    OP
       2019-12-08 16:23:53 +08:00
    @conn4575 差别还有的,用 idea 有些卡
    xyqhkr
        6
    xyqhkr  
       2020-05-21 17:48:44 +08:00
    楼主找到解决方案没?我也想解决这个问题。
    fyeeme
        7
    fyeeme  
    OP
       2020-07-25 17:05:15 +08:00
    @xyqhkr 创建 docker 的时候把硬盘映射到指定的目录,在 docker 中启动服务( mvn spring-boot:run ),在开发模式下会自动重新加载修改的 class, 然后 在 mac 中打开指定的目录,进行编码,这样理论上就可以实现基本的需求了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1162 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 00:00 · PVG 08:00 · LAX 16:00 · JFK 19:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.