docker 部署的 jenkins 正确迁移到新服务器

问题: docker 部署的 jenkins 在迁移时如果只迁移 jenkins_home 目录到新服务器上,在新服务器上部署 jenkins 后在使用中会遇到任务无法正常构建、系统奔溃报错。解决办法就是将镜像也一并迁移。

镜像迁移

  • 旧服务器导出镜像
bash 复制代码
# 根据容器创建新镜像
docker commit jenkins my/jenkins:1.0.0
# 导出镜像
docker save -o my-jenkins.tar my/jenkins:1.0.0
  • 新服务器导入镜像
bash 复制代码
# 新环境中导入镜像
docker load -i my-jenkins.tar
# 新环境中 jenkins_home 目录添加权限
sudo chown -R 1000:1000 /u01/jenkins_home
  • docker-compose.yml
yml 复制代码
version: '3'
services:
  jenkins:
    image: my/jenkins:1.0.0
    container_name: jenkins
    restart: always
    network_mode: "host"
    privileged: true
    volumes:
      - /etc/localtime:/etc/localtime
      - /u01/jenkins_home:/var/jenkins_home
    environment:
      JAVA_OPTS: "-Duser.timezone=Asia/Shanghai"
      JENKINS_OPTS: "--prefix=/jenkins --httpPort=8000"
      JENKINS_ARGS: "--prefix=/jenkins"
  • 部署 jenkins
bash 复制代码
docker-compose up -d jenkins

用私有镜像仓库更方便,该方法针对没有镜像仓库的同学。

网易云镜像仓库:https://c.163.com/hub#/m/home/

相关推荐
大猫会长5 分钟前
调用codebuddy集成的supabase授权白屏解决方法
linux·运维·服务器
夜之眷属1 小时前
服务器被挖矿病毒入侵的排查与清理实录
运维·服务器
极客先躯1 小时前
高级java每日一道面试题-2026年01月20日-实战篇[Docker]-如何实现镜像的跨区域复制?
java·运维·docker·容器·架构图
传人1 小时前
为什么 Xshell 中可以通过java -version查询到java 版本号码,Electerm 却查不到?
java·linux·服务器
元Y亨H1 小时前
宿主机 SSH 免密已通,为何 Jenkins 流水线仍报 Permission denied?
jenkins
陌上花开缓缓归以2 小时前
mebdlts3.4.1安全启动全流程
服务器·算法
鬼手点金2 小时前
opencode-全能开发者配置
java·linux·服务器·前端·javascript·学习·前向传播
阿明62 小时前
进程替换【Linux】
linux·运维·服务器
啦啦啦啦啦zzzz3 小时前
一致性哈希
服务器·算法·哈希算法·c++20·分布式存储
倔强的石头1063 小时前
【Linux指南】动静态库系列(十二):库工程发布与错误排查:从能跑到可维护
linux·运维·服务器