如果是直接启动的jenkins,虽然没有挂载volume目录,但是他还是有volume目录挂载
1:备份数据
docker run --name jenkins -itd -p 8080:8080 -p 5111:50000 jenkins/jenkins:2.361.1
docker inspect jenkins | grep -i mount -A 10 #使用docker检查看看mount哪去了
#得到结果
"Mounts": [
{
"Type": "volume",
"Name": "3e9a00d6c0e2472d24354db2fc669af38d5e0e9fdefa78e6553af7860b1867cb",
"Source": "/var/lib/docker/volumes/3e9a00d6c0e2472d24354db2fc669af38d5e0e9fdefa78e6553af7860b1867cb/_data",
"Destination": "/var/jenkins_home",
"Driver": "local",
"Mode": "",
"RW": true,
"Propagation": ""
}]
#可以看到自己挂到Source上了,这个目录就是挂载的jenkins_home
cd /var/lib/docker/volumes/3e9a00d6c0e2472d24354db2fc669af38d5e0e9fdefa78e6553af7860b1867cb/_data
tar -czvf _data.tar .
#打包要迁移的数据,压缩文件
2:数据迁移
在新的主机上docker部署jenkins
#新建文件夹并给与权限,不然会服务起不来
mkdir /var/dockerData/jenkins_home
chown -R 1000 /var/dockerData/jenkins_home
docker run --name jenkins -itd -p 8080:8080 -p 50000:50000 -v /var/dockerData/jenkins_home:/var/jenkins_home jenkins/jenkins:2.361.1
docker stop jenkins
#起来之后就停掉,然后解压上一台服务器拿过来的数据
tar -xzvf _data.tar -C /var/dockerData/jenkins_home
docker restart jenkins