如何发布Sping Boot项目?
新建好SpringBoot项目之后,SIT测试如果没问题,则下一步肯定要进行UAT测试。
那么如何将SpringBoot项目进行发布部署,这和我们之前的普通web项目不太一样,之前的项目直接部署到tomcat的webapps中,然后启动tomcat即可访问。
但是SpringBoot项目内嵌tomcat,这如何发布部署访问呢?
目前比较常用的方式有三种:发布JAR包、发布WAR包、部署到自动化容器中,以下具体讲解发布部署过程。
1
技术选型
JDK1.7、MYSQL57、Spring Boot、Logback、Mybatis、mybatis映射xml、jsp、关闭默认模板引擎、DB连接池、Docker
2
开发工具
Myeclipse、Maven、Linux、Tomcat7
方式一:JAR包--推荐
方式二:WAR包--看着办
方式三:自动化容器--强烈推荐
Docker概述:
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。更重要的是容器性能开销极低。Docker image 是用于运行容器化进程的方案,在本文中,我们将构建一个简单的 Spring Boot 应用程序。
Docker应用场景:
SpringBoot项目部署Docker过程:
Docker安装(Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上),采用yum安装方式:
①:通过 uname -r 命令查看你当前的内核版本
②:执行docker安装命令
③:启动docker后台服务
④:测试运行hello word
创建SB项目:
①:修改pom.xml,增加docker的插件
将SB项目部署到docker中:
①:首先保证在本地是可以访问没问题
②:创建一个source folder--src/main/docker
③:创建文件Dockerfile
④:导出jar包
⑤:在centos的/opt下新建docker文件夹
⑥:将jar包和Dockerfile 文件上传到docker文件夹目录下
⑦:在docker文件夹下执行命令:docker build -t docker .
-t代表要构建的镜像的tag,.代表当前目录,也就是Dockerfile所在的目录。
⑧:查看docker镜像进程docker images
⑨:启动镜像
⑩:本地浏览器访问
核心配置和操作过程如下:
核心代码:
部署过程详解:
Docker安装,采用yum安装方式:
①:通过 uname -r 命令查看你当前的内核版本
②:执行docker安装命令
③:启动docker后台服务
④:测试运行hello word
创建SB项目:
①:修改pom.xml,增加docker的插件
略
将SB项目部署到docker中:
①:首先保证在本地是可以访问没问题
②:创建一个source folder--src/main/docker
③:创建文件Dockerfile
④:导出jar包
项目-->右键-->maven install
⑤:在centos的/opt下新建docker文件夹
⑥:将jar包和Dockerfile 文件上传到docker文件夹目录下
⑦:在docker文件夹下执行命令:docker build -t docker . (注意有个点)
-t代表要构建的镜像的tag,.代表当前目录,也就是Dockerfile所在的目录。
执行过程中,报错如下:
原因:出现这个问题原因为国内网络问题,无法连接到 docker hub。 好在国内已经有 daocloud,docker指定该源即可
解决:执行命令docker pull registry
解决完毕之后,继续执行docker build -t docker . 命令(注意有个点)
⑧:查看docker镜像进程:docker images
⑨:启动镜像 docker run -d -p 8081:8081 docker
⑩:本地浏览器访问
访问之前需要开启端口访问: