在实训项目部署过程中需使用Maven对项目进行构建,这样用户只需要提交项目源代码,由Maven对项目进行构建。
一、开发环境准备
本次实战需要提前准备好以下内容:
- Docker服务所在环境:CentOS Linux release 7.6.1810
- Docker:19.03.12
二、实现步骤
1. 项目源码准备
首先,需要将Springboot项目源代码拷贝到Docker服务所在服务器上,需包含src文件夹和pom.xml文件。如下图所示:
2. 添加Dockerfile文件
在pom.xml所在目录中新建Dockerfile文件,并对项目进行配置。
# 基础镜像,使用alpine操作系统,openjkd使用8u201
FROM openjdk:8u201-jdk-alpine3.9
#作者
LABEL name="chqiuu" email="chqiuu@qq.com" verison="1.0.5"
#设置环境变量,系统编码
ENV LANG=C.UTF-8 LC_ALL=C.UTF-8
#声明一个挂载点,容器内此路径会对应宿主机的某个文件夹
VOLUME ["/tmp"]
#应用构建成功后的jar文件被复制到镜像内,名字也改成了ithe.jar
ADD target/ithe-1.0.5.jar /usr/local/ithe/ithe.jar
#启动容器时的进程
ENTRYPOINT ["java","-jar","/usr/local/ithe/ithe.jar","--spring.profiles.active=prod"]
#暴露端口
EXPOSE 8030
3. 执行Docker构建命令
# 进入项目源码所在路径
[root@localhost ~]# cd /usr/src/ithe
# 执行Docker构建命令
[root@localhost ithe]# docker run -it --rm --name maven -v "$(pwd)":/usr/src/ithe -v maven-repo:/usr/share/maven/ref -w /usr/src/app registry.cn-hangzhou.aliyuncs.com/acs/maven mvn clean install -Dmaven.test.skip=true && docker build -t ithe . && docker run -p 8030:8030 --name ithe ithe
检查项目容器是否正常运行,如下图所示表示项目已正常启动,部署完成。