使用 Docker 部署 Spring Boot 项目()

  本篇文章为你整理了使用 Docker 部署 Spring Boot 项目()的详细内容,包含有 使用 Docker 部署 Spring Boot 项目,希望能帮助你了解 使用 Docker 部署 Spring Boot 项目。

   imageName ${docker.image.prefix}/${project.artifactId} /imageName

   dockerDirectory src/main/docker /dockerDirectory

   resources

   resource

   targetPath / /targetPath

   directory ${project.build.directory} /directory

   include ${project.build.finalName}.jar /include

   /resource

   /resources

   /configuration

   /plugin

   !-- Docker maven plugin --

  

 

 

  在目录src/main/docker下创建 Dockerfile 文件,Dockerfile 文件用来说明如何来构建镜像。

  

FROM openjdk:8-jdk-alpine

 

  VOLUME /tmp

  # xxxx是你打包时候的jar包名

  ADD xxxx.jar app.jar

  ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

  

 

  这个 Dockerfile 文件很简单,构建 Jdk 基础环境,添加 Spring Boot Jar 到镜像中,简单解释一下:

  FROM ,表示使用 Jdk8 环境 为基础镜像,如果镜像不是本地的会从 DockerHub 进行下载

  VOLUME ,VOLUME 指向了一个 /tmp的目录,由于 Spring Boot 使用内置的Tomcat容器,Tomcat 默认使用 /tmp作为工作目录。这个命令的效果是:在宿主机的 /var/lib/docker目录下创建一个临时文件并把它链接到容器中的 /tmp目录

  ADD ,拷贝文件并且重命名

  ENTRYPOINT ,为了缩短 Tomcat 的启动时间,添加 java.security.egd的系统属性指向 /dev/urandom作为 ENTRYPOINT

  
构建打包环境

  我们需要有一个 Docker 环境来打包 Spring Boot 项目,在 Windows 搭建 Docker 环境很麻烦,因此我这里以 Centos 7 为例。

  安装 Docker 环境(略)

  输入docker version 返回版本信息则安装正常。

  安装JDK(略)

  输入java -version 返回版本信息则安装正常。

  安装MAVEN(略)

  输入mvn -version 返回版本信息则安装正常。

  使用 Docker 部署 Spring Boot 项目

  将项目 spring-boot-docker 拷贝服务器中,进入项目路径下进行打包测试。

  

#打包

 

  mvn package

  java -jar target/xxxx.jar

  

 

  看到 Spring Boot 的启动日志后表明环境配置没有问题,接下来我们使用 DockerFile 构建镜像。

  

mvn package docker:build

 

  

 

  使用docker images命令查看构建好的镜像:

  

docker images

 

  REPOSITORY TAG IMAGE ID CREATED SIZE

  springboot/xxxx latest 99ce9468da74 6 seconds ago 117.5 MB

  

 

  springboot/xxxx 就是我们构建好的镜像,下一步就是运行该镜像

  

docker run -p 8080:8080 -t springboot/xxxx

 

  

 

  启动完成之后我们使用docker ps查看正在运行的镜像
 

  可以看到我们构建的容器正在在运行,访问浏览器:http://192.168.0.x:8080
 

  访问成功!

  以上就是使用 Docker 部署 Spring Boot 项目()的详细内容,想要了解更多 使用 Docker 部署 Spring Boot 项目的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: