V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
coderQiQin
V2EX  ›  问与答

求教 docker 下安装 Java 配合 idea 进行开发

  •  
  •   coderQiQin · 2022-11-25 04:02:00 +08:00 · 2309 次点击
    这是一个创建于 710 天前的主题,其中的信息可能已经有所发展或是发生改变。

    本机是 mac, 没有安装 jdk, 希望把开发环境安装在 docker 容器, 然后本地用 idea 进行开发, 可行吗, 我需要怎么做 请大佬解答, 感谢

    16 条回复    2022-11-25 17:18:04 +08:00
    Ankeliei
        1
    Ankeliei  
       2022-11-25 06:52:15 +08:00 via Android
    mac docker 启动就是 9G+内存占用很正常,看你能接受不
    orangie
        2
    orangie  
       2022-11-25 08:44:17 +08:00   ❤️ 3
    无论是 windows 还是 linux 、macos ,jdk 都不需要注册表或者额外的配置文件,会用到的目录也就那一两个,不想要的时候删了就完事了,而且 idea 本身也带一个 jdk/jre ,jdk 装 docker 里纯属脱裤子放屁
    darkengine
        3
    darkengine  
       2022-11-25 08:47:57 +08:00
    可以,docker 跟 host 开个 volume 共享,代码放在里头用 IDEA 打开编辑。

    问题是确实是像楼上说的,没这个必要,又浪费资源
    dethan
        4
    dethan  
       2022-11-25 09:32:00 +08:00 via Android   ❤️ 1
    基础环境没必要放 docker
    byte10
        5
    byte10  
       2022-11-25 09:33:43 +08:00
    不行的,如果有 vscode 进行远程开发 就可以了。idea 也可以远程开发,但是目前还不好用。。我是用了 vscode 进行开发 java ,这样一台高性能小主机安装了 pve ,好几年都不用换电脑了,内存可以拉满,也不贵。
    296727
        6
    296727  
       2022-11-25 09:43:18 +08:00
    @Ankeliei 可以设置内存的,设置成 2g 就可以了
    oneisall8955
        7
    oneisall8955  
       2022-11-25 09:48:17 +08:00 via Android
    @byte10 请问小主机配置如何?成品还是组装的?
    swulling
        8
    swulling  
       2022-11-25 09:57:42 +08:00
    Mac 上的 Docker 是虚拟机实现,有一定的性能折扣,而且很多地方都不是很顺畅。
    加上本身 Mac 的配置就不算高,建议还是本地开发吧。

    如果是 M1/M2 的话,arm 版本的 JDK 也已经可用了,性能不错。
    byte10
        9
    byte10  
       2022-11-25 10:07:10 +08:00   ❤️ 1
    @oneisall8955 钱多的就直接 12 代的 NUC ,有一个魔方 s600 性价比可以,2500-3000 缘,或者摩方 S500+ 5800H 系,2000 出头。

    如果要便宜的话,可以自己组装,x99 精粤+ E5 系列的,预计板 U 900 元左右,自己组装。还有 itx D1581 性价比还可以,板 U 600 元,就能打平 i9-9900k 。组装贵一点的就是,12 代-13 代的 intel 系列的也可以,都是性能强劲,用个 3-5 年后,还能再打三年。

    主机基本就可以扔公司了,我的跑了半年,很稳。
    momocraft
        10
    momocraft  
       2022-11-25 11:31:28 +08:00
    idea 是不是自带个 jdk
    cheng6563
        11
    cheng6563  
       2022-11-25 13:44:00 +08:00
    该一行代码,IDEA 直接 run 能 1 秒编译直接启动。
    房 docker 里面打包你不起码等个 1 分钟?
    xtinput
        12
    xtinput  
       2022-11-25 14:10:43 +08:00
    macOS11 以上自带 Virtualization 框架,GitHub 上有相关的项目,直接终端指令启动一台虚拟机

    在虚拟机里面部署 java 服务器环境,然后本机开发,git 或者 ssh 同步代码,然后虚拟机运行

    Virtualization 框架的虚拟机桥接网络需要苹果的证书,只能 nat ,可以用 socat 把本地端口映射到虚拟机
    rozbo
        13
    rozbo  
       2022-11-25 14:27:54 +08:00
    由于历史包袱,IDEA 的 remote dev 一直进度缓慢,他的前后端很难分离。所以他们又开发了 Fleet ,这是一个开发之初就是前后端分离的 IDE ,天生支持 remote dev ,不过现在是公测,没有 IDEA 好用,如果 remote dev 是强需求,楼主可以试试。。
    MID
        14
    MID  
       2022-11-25 14:46:03 +08:00
    jdk 不就是一个文件夹吗?下载下来,不用之后删了就行了
    IvanLi127
        15
    IvanLi127  
       2022-11-25 15:11:18 +08:00   ❤️ 1
    现在我都尽量用 Dev Container 开发,完整环境随时生成,感觉很爽。不怕哪天环境不记得怎么配,起个项目起半天。所以楼主需求很合理啊,如果我没过度理解错的话 😝
    xtinput
        16
    xtinput  
       2022-11-25 17:18:04 +08:00
    推广一下我的虚拟机工具 https://github.com/darvintang/dvtvmcli
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1198 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 18:21 · PVG 02:21 · LAX 10:21 · JFK 13:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.