【发布时间】:2016-01-05 03:41:34
【问题描述】:
由于Docker目前是一个非常热门的技术,但我只是想知道Java是否需要它?我在下面列出了我的原因,欢迎任何反馈:
- JVM 就像一个虚拟机,将应用程序与操作系统分开
- Maven,管理依赖项
- Spring Boot,支持像tomcat一样嵌入J2EE serverlet容器,所有应用都可以输出为标准JAR文件。
所以,除了需要自己安装 JDK 外,其他一切都是一致且有条理的。我比较 Java 和 Docker,如下所示:
- JAR -> 图片
- JVM -> 虚拟机
那么,Docker 真的对 Java 有意义吗?
【问题讨论】:
-
JVM 不会为您提供隔离的文件系统或隔离的网络堆栈。 OTOH,以非 root 用户身份部署更容易/更安全。
-
比较一个JVM和一个实际的VM是比较苹果和橘子; JVM 只是 Java 的解释器(也可能是 JIT 编译器),VM 是成熟的虚拟机,有自己的硬件和操作系统。