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

2022-11-25 04:02:00 +08:00
 coderQiQin

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

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

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

如果是 M1/M2 的话,arm 版本的 JDK 也已经可用了,性能不错。
byte10
2022-11-25 10:07:10 +08:00
@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
2022-11-25 11:31:28 +08:00
idea 是不是自带个 jdk
cheng6563
2022-11-25 13:44:00 +08:00
该一行代码,IDEA 直接 run 能 1 秒编译直接启动。
房 docker 里面打包你不起码等个 1 分钟?
xtinput
2022-11-25 14:10:43 +08:00
macOS11 以上自带 Virtualization 框架,GitHub 上有相关的项目,直接终端指令启动一台虚拟机

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

Virtualization 框架的虚拟机桥接网络需要苹果的证书,只能 nat ,可以用 socat 把本地端口映射到虚拟机
rozbo
2022-11-25 14:27:54 +08:00
由于历史包袱,IDEA 的 remote dev 一直进度缓慢,他的前后端很难分离。所以他们又开发了 Fleet ,这是一个开发之初就是前后端分离的 IDE ,天生支持 remote dev ,不过现在是公测,没有 IDEA 好用,如果 remote dev 是强需求,楼主可以试试。。
MID
2022-11-25 14:46:03 +08:00
jdk 不就是一个文件夹吗?下载下来,不用之后删了就行了
IvanLi127
2022-11-25 15:11:18 +08:00
现在我都尽量用 Dev Container 开发,完整环境随时生成,感觉很爽。不怕哪天环境不记得怎么配,起个项目起半天。所以楼主需求很合理啊,如果我没过度理解错的话 😝
xtinput
2022-11-25 17:18:04 +08:00
推广一下我的虚拟机工具 https://github.com/darvintang/dvtvmcli

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/897749

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX