云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

MySQL数据库_胭脂扣百度云_年度促销

小七 141 0

负载均衡_哪个_云计算技术中心

作为开发人员,我们处理源代码,但生产系统不运行源代码,物联网的应用实例,他们需要一个可运行的东西。从很多年前开始,大多数企业都在使用JavaEE(又名J2EE),我们将部署到生产环境中的可运行"thing"是一个".jar"、".war"或".ear"文件。这些文件由已编译的Java类组成,并将在JVM上运行的"容器"中运行。只要你的类文件与JVM和容器兼容,大数据的应用,这个应用程序就可以工作了。

在人们开始构建非JVM的东西之前,一切都很好:Ruby、Python、NodeJS、Go等等。现在我们需要另一种方法来打包应用程序,以便它们可以在生产系统上运行。要做到这一点,我们需要某种虚拟化层,允许运行任何东西。Heroku是最早解决这个问题的人之一,他们使用了一个名为"lxc"的Linux虚拟化系统——Linux容器的缩写。在lxc上运行"容器"是难题的一半,因为仍然需要从源代码创建"容器",所以Heroku发明了他们称之为"Buildpacks"的方法来创建将源代码转换为容器的标准方法。

不久后,租用服务器,一个名为dotCloud的Heroku竞争对手正试图解决类似的问题,并走上了一条不同的道路最终导致了Docker,这是一种跨平台创建和运行容器的标准方法,物联智能家居,包括Windows、Mac、Linux、Kubernetes和Google Cloud run。最终,Docker背后的容器规范成为开放容器倡议(OCI)下的标准,虚拟化层从lxc切换到runc(也是一个OCI项目)。

构建Docker容器的传统方法是构建到Docker工具中,并使用一系列特殊指令,通常位于名为Dockerfile的文件中编译源代码并组装容器图像的"层"。

是的,云端云服务器,这很混乱,因为我们有各种不同的"容器"和在这些容器中运行东西的方法。还有很多方法可以创建在容器中运行的东西。这段历史很重要,因为它帮助我们将所有这些分类为三个部分:

使用Java EE,这三个类别映射到如下技术:

使用Docker/OCI,这三个类别映射到如下技术:

Java示例应用程序

git克隆https://github.com/jamesward/comparing-docker-methods.git比较

cd比较docker方法

在该项目中,您将在src/main/Java/com/google中看到一个基本的JavaWeb服务器/Web应用程序.java在GET请求中,它只会以"hello,world"作为响应