SpringBoot 2.0 学习(十三)使用Docker部署项目
Docker是什么?
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口.解释来自于百度百科。
Docker部署前准备工作
1.在CentOS 7中安装docker环境
安装
yum install docker
安装完成后,使用下面的命令来启动 docker 服务,并将其设置为开机启动:
systemctl start docker.service
systemctl enable docker.service
使用Docker 中国加速器
vi /etc/docker/daemon.json
#添加后:
{
"registry-mirrors": ["https://registry.docker-cn.com"],
"live-restore": true
}
重新启动docker
systemctl restart docker
输入docker version 返回版本信息则安装正常。
2.安装JDK,可以参考我的文章Linux环境下安装jdk
输入java -version 返回版本信息则安装正常。
3.安装MAVEN,可以参考我的文章Linux环境下安装Maven
输入mvn -version 返回版本信息则安装正常。
构建简单Springboot2.0项目
依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
POM里面添加docker支持
在pom.xml-properties 中添加 Docker 镜像名称
plugins 中添加 Docker 构建插件:
控制层
创建 Dockerfile 文件
在目录src/main/docker创建 Dockerfile 文件,Dockerfile 文件用来说明如何来构建镜像。
FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD springboot-docker-demo-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT [“java”,"-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
CentOS 7中部署springboot项目
第一步:使用 DockerFile 构建镜像
文件从本地上传到Linux指定目录,我是用的WinSCP软件,具体如何使用,请参考我的文章WinSCP与Linux系统之间文件传输,下面是我的linux文件目录(https://blog.csdn.net/sinat_38798245/article/details/88107467)
mvn package docker:build
第二步:使用docker images命令查看构建好的镜像
第三步:运行该镜像
docker run -p 8080:8080 -t springboot/spring-boot-docker
第四步:docker ps查看正在运行的镜像
第五步:在浏览器中,输入http://192.168.56.101:8080//
说明使用 Docker 部署 Spring Boot 项目成功!