debian

Debian如何实现Jenkins自动化部署

小樊
42
2025-03-23 01:48:32
栏目: 智能运维

在Debian系统上实现Jenkins自动化部署,可以按照以下步骤进行:

环境准备

  1. 硬件与操作系统选择

    • 生产环境推荐配置:8核CPU / 16GB内存 / 100GB SSD存储(建议多节点部署,分离Master与Agent)。
    • 测试环境推荐配置:4核CPU / 8GB内存 / 50GB SSD存储。
    • 操作系统:优先选择Ubuntu LTS(如Ubuntu 22.04 LTS),CentOS Stream 9也可支持,但需注意FirewallD与SELinux配置。
  2. 安装依赖与Jenkins

    • 安装Java环境

      • 对于Ubuntu:

        sudo apt update && sudo apt install -y openjdk-11-jdk
        
      • 对于CentOS:

        sudo yum install -y java-11-openjdk-devel
        
    • 通过官方仓库安装Jenkins

      • 对于Ubuntu:

        sudo wget -O /usr/share/keyrings/jenkins-keyring.asc https://pkg.jenkins.io/debian-stable/jenkins.io.key
        echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] https://pkg.jenkins.io/debian-stable binary/" | sudo tee /etc/apt/sources.list.d/jenkins.list
        sudo apt update && sudo apt install -y jenkins
        
      • 对于CentOS:

        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
        sudo yum install -y jenkins
        
    • 启动Jenkins服务

      sudo systemctl enable jenkins
      sudo systemctl start jenkins
      sudo systemctl status jenkins # 确认状态为Active
      
  3. 防火墙与端口开放

    • 开放8080和50000端口(Agent通信端口):

      sudo ufw allow 8080/tcp
      sudo ufw allow 50000/tcp
      sudo ufw reload
      

初始化配置

  1. 解锁Jenkins:访问 http://<服务器IP>:8080,输入初始密码:sudo cat /var/lib/jenkins/secrets/initialAdminPassword
  2. 加速插件安装:更换国内镜像源,进入Manage Jenkins -> Plugin Manager -> Advanced,替换Update Site URL为:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json,安装必备插件:Pipeline、GitHub Integration、Docker、Kubernetes CLI、Credentials Binding。
  3. 权限安全配置:禁用匿名访问,进入Manage Jenkins -> Security -> Enable security,选择Logged-in users can do anything,创建管理员用户,设置用户名、密码和邮箱,避免使用默认账号“admin”。

构建流水线

  1. 连接代码仓库(以GitHub为例):

    • 生成SSH密钥对:ssh-keygen -t rsa -b 4096 -f ~/.ssh/jenkins_github,复制公钥到GitHub的Deploy Keys。
    • 在Jenkins中配置凭据:进入Manage Jenkins -> Credentials -> System -> Global credentials,添加SSH私钥(类型:SSH Username with private key),ID命名为github-ssh。
  2. 创建声明式流水线项目

    • 新建Pipeline任务,任务名:demo-pipeline。
    • 选择Pipeline script from SCM,配置Git仓库地址与凭据。

注意事项

以上步骤提供了一个基本的Jenkins自动化部署流程,具体配置可能会根据实际项目需求有所不同。

0
看了该问题的人还看了