jenkins 服務器需先保留着原先構建的不同版本的應用鏡像
[root@jenkins sh]# docker images|grep "maintain" registry-vpc.cn-hangzhou.aliyuncs.com/******-ui-maintain 20190719 849ed46fa462 31 minutes ago 293 MB registry-vpc.cn-hangzhou.aliyuncs.com/*******-ui-maintain latest 849ed46fa462 31 minutes ago 293 MB d*****-maintain latest 849ed46fa462 31 minutes ago 293 MB registry-vpc.cn-hangzhou.aliyuncs.com/******-ui-maintain 3.0.1 e2b4887b3db4 2 weeks ago 293 MB registry-vpc.cn-hangzhou.aliyuncs.com/******-maintain 2.0.1 af427b4858d3 2 weeks ago 293 MB registry-vpc.cn-hangzhou.aliyuncs.com/******-maintain 1.0.1 79bba8b2c438 2 weeks ago 293 MB registry-vpc.cn-hangzhou.aliyuncs.com/********-maintain <none> 5055d71b89ef 2 weeks ago 293 MB
jenkins 構建配置參數化構建過程

配置下自定義的工作空間

無需源碼管理

構建 執行 shell , 將版本號參數傳入 腳本

腳本 重新tag 自定義的版本號到鏡像的latest , 再push 本地的latest到遠程的阿里雲鏡像倉庫
#!/bin/bash
#獲取參數
while getopts "n:" opt; do
case $opt in
n)
version=$OPTARG
;;
\?)
;;
esac
done
source /etc/profile
sudo docker tag registry-vpc.cn-hangzhou.aliyuncs.com/z*****m/da*****-ui-maintain:$version d*****e-ui-maintain
sudo docker login --username=***** -p Z*******dk registry-vpc.cn-hangzhou.aliyuncs.com
sudo docker tag d*****e-ui-maintain registry-vpc.cn-hangzhou.aliyuncs.com/z*****em/d*****e-ui-maintain
sudo docker push registry-vpc.cn-hangzhou.aliyuncs.com/z******m/d****e-ui-maintain
curl https://cs.console.aliyun.com/hook/trigger?*******WfQv3D0
if [ $? -eq 0 ]; then
echo -e "\033[32m[ the application d*****e-ui-maintain successfully Rollbacked ]\033[0m"
else
echo -e "\033[31m\033[01m[ the application d*****e-ui-maintain Rollback failed ]\033[0m"
fi
執行回滾構建操作

回滾構建后 web 恢復到相應的版本
查看 jenkins 服務器 images 信息 , 本地鏡像latest 的image id 跟 2.0.1 tag的是一致的
[root@jenkins sh]# docker images|grep "maintain" registry-vpc.cn-hangzhou.aliyuncs.com/******-ui-maintain 20190719 849ed46fa462 51 minutes ago 293 MB registry-vpc.cn-hangzhou.aliyuncs.com/*******-ui-maintain 3.0.1 e2b4887b3db4 2 weeks ago 293 MB registry-vpc.cn-hangzhou.aliyuncs.com/*****-ui-maintain 2.0.1 af427b4858d3 2 weeks ago 293 MB registry-vpc.cn-hangzhou.aliyuncs.com/******-ui-maintain latest af427b4858d3 2 weeks ago 293 MB dataline-ui-maintain latest af427b4858d3 2 weeks ago 293 MB registry-vpc.cn-hangzhou.aliyuncs.com/*****-ui-maintain 1.0.1 79bba8b2c438 2 weeks ago 293 MB registry-vpc.cn-hangzhou.aliyuncs.com/*****-ui-maintain <none> 5055d71b89ef 2 weeks ago 293 MB
第二種方式:
如果阿里雲鏡像倉庫已經保存了 應用各個版本的鏡像版本

參數化構建傳入tag 版本號

用 kubectl set image 命令 更新原先版本鏡像的應用 , 實現版本的回滾功能
