如何对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