Docker化Spring Boot应用程序

你好朋友,

在本教程中,我们将看到如何对Spring Boot应用程序进行Docker化。通过dockerizing意味着我们将以Docker容器的形式运行应用程序。

以下是涉及的步骤:

1.创建一个Spring Boot应用程序

2.在您的机器上安装Docker 3.在您的项目中创建一个Docker文件 4.使用docker文件构建Docker 5. Docker运行

让我们一一看一下这些步骤。

请遵循我的教程“ 如何使用Spring Initializer创建Spring Boot项目”以获取使用Spring Boot Initiailizer创建Spring Boot项目所需的步骤。

因此,一旦完成此步骤,就应该准备好在工作区中使用springBootApp项目。

2.2登录Docker Hub。如果您没有帐户,请单击创建帐户创建一个新帐户。


2.3在下面的屏幕上单击Download Docker Desktop。

2.4单击“下载Windows的Docker桌面”以下载Windows的安装程序。

要下载Mac的安装程序,请单击“ Mac的Docker桌面”。

2.5请按照此处提到的步骤从Installer安装Docker,您的Docker应该已启动并正在运行。

来自Docker Docs

–适用于Windows的Docker桌面安装包括:安装提供Docker Engine ,Docker CLI客户端, Docker ComposeDocker Machine
Kitematic

–使用Docker Desktop for Windows创建的容器和映像在安装它的机器上的所有用户帐户之间共享。 这是因为所有Windows帐户都使用相同的VM来构建和运行容器。

–嵌套虚拟化方案(例如在VMWare或Parallels实例上运行Windows的Docker桌面)可能会起作用,但不能保证。

在创建docker文件之前,让我们了解什么是docker文件以及为什么需要它。

Docker文件是文本文件,具有一组指令或命令,这些指令或命令将由Docker守护程序执行以创建Docker映像。

Docker文件示例:

来自openjdk:8 u212-b04-jdk- Stretch
COPY target / springBootApp-0.0.1-SNAPSHOT.jar springBootApp-0.0.1-SNAPSHOT.jar
展览8080 ENTRYPOINT [“ java”,“-jar”,“ springBootApp-0.0.1-SNAPSHOT.jar”]

3.2为什么需要Docker File

通过基本执行docker文件,我们创建了一个docker映像,该映像包含运行应用程序viz所需的所有详细信息。 应用程序代码,系统库,工具。现在,我们可以在安装了docker的任何计算机上运行此映像,它将获得相同的执行环境。说我有多个环境,我的应用程序代码将在进入ST,ET等生产环境之前经历现在,如果我在任何这些(ST,ET,Prod)机器上执行此docker映像,它将确保该应用程序具有相同的执行环境。

另外值得一提的是,一旦我们运行docker镜像,它便成为了容器,我们可以通过执行以下命令来查看容器:

docker容器ls

要在Docker文件中执行命令或指令,我们需要在命令提示符下执行docker build命令,如下所示:

docker build -t <标签名称>

docker build命令从dockerfile和“上下文”构建docker映像。构建的上下文是位于指定PATH或URL中的一组文件。构建过程可以引用上下文中的任何文件。例如,我们的build可以使用COPY指令在上下文中引用文件。

在下面的示例中,PATH是当前目录(点),因此将通过使用项目文件夹中的文件和文件夹(从我们执行此命令的位置)来构建上下文

docker build -t <标签名称>

在以下示例中,

docker build -t“ springbootapp”。

docker build命令需要从放置了docker文件的项目的根目录执行,并且文件名必须是dockerfile(不区分大小写)。当我们执行docker build时,docker文件中的所有指令都将被执行由一个创建一个docker镜像,其名称在“标签名称”中给出。

我们可以通过执行以下命令来检查新创建的docker镜像:

码头工人形象l s

使用URL参数,我们可以提及Github或bitbucket存储库的URL。然后Docker构建将递归地从该存储库中提取目录,子目录,文件,并将其用作构建上下文并将其发送到Docker守护程序。

docker build -t <标签名称> <存储库URL>


在这种情况下,docker将克隆远程存储库,并将克隆的存储库用作构建上下文。

Docker run命令运行docker映像。 docker映像的运行时实例称为docker容器。

docker run -p 8080:8080 <映像名称>
默认情况下,容器不发布任何端口,这里我们将容器的端口8080映射到主机的端口8080。

因此,基本上,在docker运行之后,您的应用程序将启动并作为容器运行。

通过对我们的Java应用程序进行泊坞处理,我们确保我们的应用程序在DEV,ST,ET,PR上具有相同的执行环境,以确保应用程序行为不会因应用程序环境(DEV,ST等)的更改而改变。

参考文献:

https://docs.docker.com/

翻译自: https://www.javacodegeeks.com/2019/08/dockerizing-spring-boot-application-2.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值