以上我们已经创建了一个项目futurecloud-eshop,并配置Github,包括github地址,用户名和密码,分支,且构建成功。
接下来,我们需要将此项目通过jenkins部署到docker。
1、配置构建环境
-
增加构建步骤:调用顶级maven目标
Add pre-build step -> invoker top-level-Maven targets
配置maven信息
Maven version: maven-3.6.0 #之前配置的全局maven名
Goals: clean package
POM: pom.xml
-
继续增加构建步骤:执行shell脚本
Add post-build step -> execute shell
在command中添加以下shell脚本
#docker运行服务URL
REGISTRY_URL=xxx.xxx.xxx.xxx:2375
#操作/项目路径(Dockerfile存放的路劲)
BASE_PATH=/work/project
# 源项目工作空间
SOURCE_PATH=/root/.jenkins/workspace
#docker 镜像路径,也是父项目路径
PARENT_PATH=futurecloud-eshop
#docker 镜像/容器/项目名字或者jar名字数组 这里都使用项目名命名
PROJECT_NAMES=("eshop-eureka-server" "eshop-product-service" "eshop-price-service" "eshop-inventory-service" "eshop-datasync-service" "eshop-dataaggr-service" "eshop-datalink-service" "eshop-one-service")
#项目版本号/docker 容器tag,使用项目版本号来做tag,版本号要与项目数组PROJECT_NAMES一一对应
PROJECT_VERSIONS=("1.0-SNAPSHOT" "1.0-SNAPSHOT" "1.0-SNAPSHOT" "1.0-SNAPSHOT" "1.0-SNAPSHOT" "1.0-SNAPSHOT" "1.0-SNAPSHOT" "1.0-SNAPSHOT")
#docker容器暴露的端口,端口号要与项目数组PROJECT_NAMES一一对应,这里为了简化,docker容器端口与宿主机端口配置成一样的。
EXPOSE_PORTS=("8761" "8762" "8763" "8764" "8765" "8766" "8767" "8768")
##############以下内容不用修改
DATE=`date +%Y%m%d%H%M`
#创建项目环境目录
function projectDir(){
for (( i =