在Docker容器内使用Java
Java是目前最流行的企业级语言之一。它是面向对象编程的核心,并拥有构建企业级应用程序和测试平台的强大平台。对于新手来说,安装和适应Java环境最初可能需要一些时间。
Docker容器允许您在其中访问Java运行时环境,从而提供易于管理的打包环境,其中已安装库。如果您在本地机器上安装了Docker,则无需运行Java应用程序并经历所有繁琐的过程,您可以通过Docker注册表直接提取Java镜像来轻松构建Java镜像,并可以通过简单易行的步骤直接在容器提供的环境中运行Java应用程序。
在本文中,我们将讨论运行Docker容器内Java应用程序所需遵循的所有步骤。主要有两种方法可以在Docker容器内使用和运行Java应用程序。
您可以创建和构建自定义镜像,并使用apt-get命令分别在Dockerfile中指定它们来安装Java。
您可以直接从Docker注册表提取官方Java镜像,并在其中直接运行您的Java应用程序。
我们将使用更容易的第二种方法。让我们一步一步地完成这个过程。
创建构建上下文以存储Dockerfile和Java应用程序
首先,您需要创建一个Docker构建上下文,其中包含您的Dockerfile和Java应用程序。
mkdir my−java−app
创建Java应用程序
您可以在扩展名为.java的文件中创建一个简单的Java应用程序。请参考下面存储在名为“tutorialspoint.java”的文件中的代码片段,该文件位于我们在上述步骤中创建的“my−java−app”目录中。
import java.utils.*; class Main{ public static void main(String args[]){ System.out.println("Welcome to TutorialsPoint"); } }
创建一个Dockerfile来构建镜像
创建一个名为“dockerfile”的文件。将下面的指令包含在文件中,并将其保存到已经包含Java应用程序的“my−java−app”目录中。
#Pull the Java base image FROM java:8 #Set the working directory WORKDIR /var/www/java #Copy the build context COPY . /var/www/java #Compile the Java application RUN javac tutorialspoint.java #Run the executable CMD ["java", "Hello"]
上面的Dockerfile指定了创建Java镜像并在与该镜像关联的Docker容器内运行我们的应用程序所需的所有指令。它从Docker注册表提取Java 8镜像并设置工作目录。然后,它复制包含我们的Java应用程序的Docker构建上下文。然后,它使用javac命令编译Java应用程序,最后使用CMD命令运行编译后创建的可执行文件。
构建Docker镜像
创建Dockerfile后,您可以使用以下构建命令来构建Docker镜像。
sudo docker build −t <image−name> .
执行上述命令后,它将成功构建Docker镜像。
运行Docker容器
您现在可以使用Docker run命令来创建与上述镜像关联的Docker容器,并在Docker容器内运行您的Java应用程序。
sudo docker run <image−name>
总而言之,创建一个完美的Java运行时环境来执行所有Java应用程序可能是一项艰巨的任务。幸运的是,Docker提供了预构建的Java镜像,您可以轻松地从Docker注册表中提取这些镜像,并立即开始构建您的Java应用程序。您还可以扩展它来创建一个Spring环境和所有其他Java企业平台,并可以大规模地处理Java应用程序。Docker容器提供了一个封闭的环境来管理所有应用程序,而无需担心版本控制、项目管理、资源管理等。
在本文中,我们讨论了如何从Docker注册表中提取官方Java镜像,创建Dockerfile来运行我们的Java应用程序,使用Docker build和run命令来构建镜像,编译和执行应用程序。