根据Docker理论,通过在其间放置“Docker Engine”(在下图中用蓝色标记该层),有助于使应用层与平台无关。
这似乎与JVM概念非常相似。它有助于使Java,平台无关的语言。
问题 -
我的理解 -
你能帮我清楚一下吗?
答案 0 :(得分:2)
平台独立性是包装应用程序而不是引擎本身的容器。
Docker的整个想法是将应用程序与其依赖关系包装起来,以便可以在安装了Docker的任何机器上部署它。
Docker最初只针对Linux发行版。然后将其扩展为允许用户在Windows / MAC上运行容器。这是通过在Windows / MAC上安装Docker时在后台部署迷你Linux VM来实现的。然后Docker引擎将在这个Linux VM中运行,所有容器也将在那里运行。
原因是容器需要OS内核级别的支持,最初只有Linux才有这种支持。然后大公司开始意识到社区的优势和对Docker的巨大兴趣。因此,Windows决定进行必要的操作系统开发,以便在Windows 10上本机运行Docker引擎。
简而言之,平台独立性来自应用程序容器的角度。在Linux上运行的Docker容器也可以在Windows上运行而无需任何更改。这与特定于操作系统的JVM非常相似,但是相同的Java应用程序可以在安装JVM的任何地方运行。