安装和部署 Jenkins

160 阅读3分钟

1. 安装 Jenkins

参考官方文档:

Redhat Jenkins 软件包

WAR 文件 (jenkins.io)

在 Ubuntu 上安装 Jenkins

  1. 更新系统包

    sudo apt update
    sudo apt install openjdk-11-jdk -y
    
  2. 添加 Jenkins 仓库并导入 GPG 密钥

    sh
    复制代码
    curl -fsSL https://pkg.jenkins.io/debian/jenkins.io.key | sudo tee \
       /usr/share/keyrings/jenkins-keyring.asc > /dev/null
    echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
       https://pkg.jenkins.io/debian binary/ | sudo tee \
       /etc/apt/sources.list.d/jenkins.list > /dev/null
    
  3. 安装 Jenkins

    sh
    复制代码
    sudo apt update
    sudo apt install jenkins -y
    
  4. 启动 Jenkins 服务

    sh
    复制代码
    sudo systemctl start jenkins
    sudo systemctl enable jenkins
    
  5. 打开 Jenkins 管理界面

    • 通过浏览器访问 http://<your-server-ip>:8080

    • 获取初始管理员密码

      sh
      复制代码
      sudo cat /var/lib/jenkins/secrets/initialAdminPassword
      
    • 在浏览器输入初始密码并完成安装向导

在 CentOS 上安装 Jenkins

  1. 安装 Java

    sh
    复制代码
    sudo yum install java-11-openjdk-devel -y
    
  2. 添加 Jenkins 仓库

    sh
    复制代码
    sudo wget -O /etc/yum.repos.d/jenkins.repo \
       https://pkg.jenkins.io/redhat-stable/jenkins.repo
    sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
    
  3. 安装 Jenkins

    sh
    复制代码
    sudo yum install jenkins -y
    
  4. 启动 Jenkins 服务

    sh
    复制代码
    sudo systemctl start jenkins
    sudo systemctl enable jenkins
    
  5. 打开 Jenkins 管理界面

    • 通过浏览器访问 http://<your-server-ip>:8080

    • 获取初始管理员密码

      sh
      复制代码
      sudo cat /var/lib/jenkins/secrets/initialAdminPassword
      
    • 在浏览器输入初始密码并完成安装向导

2. 配置 Jenkins

  1. 安装推荐的插件

    • 在初始设置向导中,选择“Install suggested plugins”。
  2. 创建第一个管理员用户

    • 按照向导提示创建管理员用户。
  3. 配置系统设置

    • 配置 Jenkins URL 等基础设置。

3. 创建和配置 Jenkins Job

  1. 创建新 Job

    • 在 Jenkins 首页,点击 “New Item”。
    • 输入 Job 名称,选择 “Freestyle project” 或其他类型,然后点击 “OK”。
  2. 配置源码管理

    • 在 “Source Code Management” 部分,选择 Git 并输入仓库 URL 和凭据。
  3. 配置构建触发器

    • 在 “Build Triggers” 部分,选择触发构建的方式,例如 “Poll SCM” 或 “Build periodically”。
  4. 配置构建步骤

    • 在 “Build” 部分,添加构建步骤,例如 “Execute shell”。

    • 例如,执行一个 shell 脚本:

      sh
      复制代码
      echo "Building the project"
      
  5. 配置构建后操作

    • 在 “Post-build Actions” 部分,添加构建后的操作,例如发送邮件通知或部署代码。

4. 执行 Job

  1. 手动执行

    • 在 Job 页面,点击 “Build Now” 手动触发构建。
    • 在 “Build History” 中查看构建状态和日志。
  2. 自动触发

    • 根据配置的触发器,Jenkins 会自动触发构建。

示例:通过 Jenkins 部署 Node.js 应用到服务器

  1. 创建 Freestyle project Job

  2. 配置源码管理

    • 仓库 URL 和凭据。
  3. 配置构建步骤

    • 安装依赖:

      sh
      复制代码
      npm install
      
    • 构建项目:

      sh
      复制代码
      npm run build
      
    • 部署到服务器(例如通过 rsync):

      sh
      复制代码
      rsync -avz --delete-after /path/to/build/ user@server:/path/to/deploy/
      
  4. 配置构建后操作

    • 例如,重启服务器上的服务:

      sh
      复制代码
      ssh user@server 'pm2 restart my-app'
      

这样,通过 Jenkins 的一键构建和部署流程,你可以实现代码的自动化集成和部署。