温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何用Jenkins同步服务器

发布时间:2026-09-05 00:55:01 来源:亿速云 阅读:112 作者:小樊 栏目:系统运维

“用 Jenkins 同步服务器”通常有两种理解:

  1. 用 Jenkins 把代码/文件同步到目标服务器(部署/发布)
  2. 用 Jenkins 在多台 Jenkins 节点/服务器之间做配置或任务同步

下面我分别说明,最常见的是第 1 种。


一、用 Jenkins 同步文件到服务器(最常用)

方式 1:Publish Over SSH(推荐)

适合:把构建产物同步到 Linux 服务器

步骤:

  1. 安装插件
    Publish Over SSH
    
  2. Jenkins → 系统配置 → Publish over SSH
    • 配置 Host、Username、私钥/密码
  3. 在 Job 中:
    • Build 完成后
    • 增加构建后步骤:
      Send build artifacts over SSH
      
    • 配置:
      • Source files: dist/**
      • Remote directory: /data/www
      • Exec command(可选):
        systemctl restart nginx
        

✅ 优点:稳定、简单、无需写脚本


方式 2:Shell + rsync(灵活)

适合:自定义同步逻辑

Jenkins 服务器需要能 SSH 到目标服务器

Pipeline 示例:

pipeline {
    agent any
    stages {
        stage('Deploy') {
            steps {
                sh '''
                rsync -az --delete dist/ user@server:/data/www/
                '''
            }
        }
    }
}

或在 freestyle 项目里:

rsync -az ./dist/ root@192.168.1.10:/var/www/html/

方式 3:Ansible + Jenkins

适合:多台服务器同步

sh 'ansible-playbook deploy.yml'

deploy.yml:

- hosts: web
  tasks:
    - synchronize:
        src: dist/
        dest: /data/www

二、Jenkins 多服务器/节点同步

1. Jenkins Agent(节点)

  • 主 Jenkins 控制
  • 多台服务器作为 Agent
  • 任务可分配到不同服务器执行

配置:

Manage Jenkins → Nodes → New Node

2. Jenkins 配置同步(CasC / Shared Library)

  • JCasC(Jenkins Configuration as Code)
  • Git 管理 Jenkins 配置
  • 多 Jenkins 实例保持一致

三、常见同步场景对照

场景 推荐方案
代码部署到服务器 Publish Over SSH
多文件/增量同步 rsync
多台服务器 Ansible
CI/CD 自动化 Jenkins Pipeline

四、如果你能补充这几点,我可以给你精确方案

  1. 是 文件同步 还是 Jenkins 配置同步?
  2. 目标服务器是 Linux / Windows?
  3. 用 Freestyle 还是 Pipeline?
  4. 单台还是多台服务器?

我可以直接给你可复制的 Jenkins 配置或 Pipeline。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手