如何对Spring应用程序进行dockerize

时间:2020-02-23 14:33:09  来源:igfitidea点击:

在本教程中,我们将了解什么是Docker,以及如何使用它对Spring应用程序进行Dockerize。

Dockerfile文件

只是一个.txt文件。Dockerfile允许我们运行构建镜像的命令。如果要指定图像的层,这些命令非常有用。需要注意的一点是,我们也可以通过传递命令行来运行这些命令,而不是将它们包含在文件中。

在使用dockerfiles时,我们必须知道几个关键字:

FROM:这个关键字告诉Docker使用一个给定的基本镜像。但是,如果图像不是本地的,Docker将在DockerHub上执行在线搜索。

维护者:标识图像的作者。

运行:在目标系统中执行shell命令行。

复制:将本地文件系统中的文件复制到镜像中。

WORKDIR:设置当前工作目录。

让我们看一个简单的例子:

FROM alpine:3.2

MAINTAINER theitroad.local

ADD target/demo-0.0.1-SNAPSHOT.jar app.jar

RUN sh -c 'touch /app.jar'

我们应该将docker文件保存在根文件夹中。

现在,我们需要一个.jar文件,该文件将用于创建Docker镜像。要创建.jar文件,请运行:

mvn clean install

如果我们使用的是Maven。

在你保存了docker文件之后,是时候构建我们的docker镜像了。

导航到Spring应用程序根文件夹并键入以下内容:

docker build -t springboot-app:latest

但是,如果从另一个文件夹执行build命令,build命令的结构应该如下所示:

docker built -t springboot-app:latest -f path-to-the-dockerfile

完成!我们建立了Docker形象。现在,要启动容器,请键入以下命令:

docker run -p 8080:8080 app

上述命令分解:

容器是一个孤立的环境,这意味着我们需要映射我们设置为8080(第一个)的 主机操作系统的端口和容器内部的端口(第二个8080)。

-电话:8080:8080

要访问它,请键入以下命令:

docker exec -ti app bash

要访问日志:

docker logs app