起因
早上收到阿里云的安全中心的电话,说检测到我们部分服务器使用了Jenkins,存在严重的安全漏洞。希望我们购买他们的安全防火墙,或者自己升级Jenkins。购买当然是不可能的拉。马上开始Jenkins升级。
硬货
停止之前的老版本
既然有漏洞,就先把老的版本服务停了。
安装新版本
这边我用的是docker-compose进行安装。docker和docker-compose的安装,自行百度。
version: '2'
services:
jenkins:
image: jenkins/jenkins
container_name: lon-jenkins
restart: always
volumes:
- ./home:/var/jenkins_home
- /bin/docker:/usr/bin/docker
- /var/run/docker.sock:/var/run/docker.sock
ports:
- "9000:8080"
environment:
- TZ=Asia/Shanghai
启动后关闭服务
拷贝老版本的数据到新版本
到老版本的%old_jenkins_home%(一般是“/var/jenkins_home”),拷贝所有文件到新版本的%jenkins_home%。
我这边再docker-compose文件中,对%jenkins_home%进行了挂载。所以只需要把文件拷贝到%workspace%/home。
cd %workspace%
cp -r %old_jenkins_home%/* %workspace%/home/
然后重启服务即可
%workspace%是指工作空间,个人根据自己实际情况配置。
部分插件不可用,更新插件版本
升级后,可能会出现部分插件不可用的情况。去插件控制中心,升级插件就可以了。