使用Java后端对Angular应用进行Docker化 -Bhargav

微信扫一扫,分享到朋友圈

使用Java后端对Angular应用进行Docker化 -Bhargav

Docker是企业就绪的容器平台,使组织能够在任何地方无缝地构建,共享和运行任何应用程序。几乎每家公司都在对其应用程序进行容器化,以加快生产工作负载,以便它们可以随时随地部署,有时一天可以部署几次。我们可以使用多种方式来构建Angular应用程序。一种方法是使用Java后端对Angular应用进行docker化并创建一个docker镜像(映像),以便我们可以每天或有时每天多次部署该镜像。

先决条件

前提条件是,必须安装Docker for Desktop(无论您的操作系统是什么)。 请点击此链接
在您的笔记本电脑上安装Docker。安装后,您可以使用以下命令检查Docker信息或版本。

Github链接: https://github.com/bbachi/angular-java-docker.git

这是一个简单的项目,演示了如何使用Java开发和运行Angular应用程序。我们有一个简单的应用程序,可以在其中添加用户,计数并在侧面显示它们,并在需要时检索它们。

<font><i>//克隆项目</i></font><font>
git clone https:</font><font><i>//github.com/bbachi/angular-java-docker.git</i></font><font>
</font><font><i>//构建项目</i></font><font>
mvn clean install
java -jar target /users-0.0.1-SNAPSHOT.jar
</font>

Docker化应用

我们已经看到了如何以常规方式构建项目和调整应用程序。让我们看看如何创建一个Dockerfile并在Docker中运行相同的应用程序。

首先,我们创建一个名为docker的文件夹,并使用maven插件将生成的war文件放置在该文件夹中。如果查看pom.xml的构建部分,我们有一个名为repackage的目标,可在构建应用程序时将打包的war文件放置在docker文件夹中。使用单独的文件夹的优点之一是,构建映像时不必将整个应用程序代码发送到Docker守护程序。

让我们转到应用程序的根目录并运行mvn命令mvn clean install.现在,我们应该在docker文件夹中拥有war文件。

其次,我们需要创建一个用于创建Docker映像的Dockerfile。这是一个以FROM命令开头并以基本映像openjdk:8-jre-alpine开头的文件。复制生成的war文件,最后复制在实例化映像时运行的CMD命令。

# Alpine Linux with OpenJDK JRE
FROM openjdk:8-jre-alpine
# Copy war file
COPY users-0.0.1-SNAPSHOT.jar /users.war
# run the app
CMD [<font>"/usr/bin/java"</font><font>, </font><font>"-jar"</font><font>, </font><font>"/users.war"</font><font>]
</font>

如果您位于根目录中,请更改目录并构建docker映像,并使用以下命令进行验证:

<font><i>// change directory</i></font><font>
cd docker
</font><font><i>// build the image</i></font><font>
docker build -t java-angular .
</font><font><i>// list the image</i></font><font>
docker images
</font><font><i>// login into your registry (Docker Hub)</i></font><font>
docker login
</font><font><i>// tag the image</i></font><font>
docker tag java-angular <repository name>/java-angular
</font><font><i>// push the image</i></font><font>
docker push <repository name>/java-angular
</font>

现在,我们有了docker映像,让我们运行容器,一旦容器启动并运行,您可以在 http:// localhost:8080 /上
访问应用程序

<font><i>//运行容器</i></font><font>
docker run -d -p 8080:8080 --name javaangular java-angular
</font><font><i>//列出容器</i></font><font>
docker ps
</font><font><i>//  日志</i></font><font>
docker logs javaangular
</font><font><i>// exec进入正在运行的容器</i></font><font>
docker exec -it javaangular /bin/sh
</font>

摘要

  • Docker是企业就绪的容器平台,使组织能够在任何地方无缝地构建,共享和运行任何应用程序。
  • 您需要使用maven插件构建一个war文件。
  • 为docker创建一个单独的文件夹,这样您就不必将所有源代码发送到docker守护程序。
  • 使用称为repackage的maven目标将打包的war文件放置在docker文件夹中。
  • 构建映像时,请始终从细长的Docker映像开始,并复制war文件并使用java命令启动应用程序。
  • 您可以使用此命令标记该映像并将其推送到所需的任何注册表中 docker push
  • 最后,您可以使用docker run命令运行docker容器。

京东618叠加北京消费季,首都消费热情将被“点…

上一篇

AMD产品经理:4G显存即将淘汰,未来游戏需要更高配置

下一篇

你也可能喜欢

使用Java后端对Angular应用进行Docker化 -Bhargav

长按储存图像,分享给朋友