建 Jenkins 平台步骤

以下是搭建 Jenkins 项目平台 的完整步骤,涵盖 安装、配置、流水线创建自动化部署,适用于 Linux/Windows 环境:


1. 安装 Jenkins

Linux (Ubuntu/CentOS)

# 安装 Java (Jenkins 依赖)
sudo apt update && sudo apt install openjdk-11-jdk -y  # Ubuntu
sudo yum install java-11-openjdk -y                   # CentOS

# 添加 Jenkins 仓库并安装
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
sudo apt update && sudo apt install jenkins -y

# 启动 Jenkins
sudo systemctl start jenkins
sudo systemctl enable jenkins

Windows

  1. 下载 Jenkins Windows Installer 并运行。
  2. 安装完成后,访问 http://localhost:8080

2. 初始配置

  1. 解锁 Jenkins
    访问 http://<服务器IP>:8080,输入初始密码(路径在终端显示,通常为 /var/lib/jenkins/secrets/initialAdminPassword)。
  2. 安装推荐插件
    选择 "Install suggested plugins"(包括 Git、Pipeline 等核心插件)。
  3. 创建管理员账户
    设置用户名和密码。

3. 关键插件安装

进入 Manage Jenkins > Plugins,安装以下插件:


4. 创建第一个流水线项目

方式1:自由风格项目

  1. 新建任务 > 选择 "Freestyle project"。
  2. 配置 Git 仓库
    • 在 "Source Code Management" 中选择 Git,填写仓库 URL(如 https://github.com/your-repo.git)。
    • 添加凭据(GitHub 用户名/密码或 SSH 密钥)。
  3. 构建触发器
    • 定时构建:H/5 * * * *(每5分钟检查一次)。
    • GitHub Webhook:需在 GitHub 仓库设置中配置 Webhook URL(http://<Jenkins-IP>:8080/github-webhook/)。
  4. 构建步骤
    • 执行 Shell 命令(如 mvn clean package)或调用 Docker 构建。

方式2:Pipeline 脚本(推荐)

  1. 新建任务 > 选择 "Pipeline"。
  2. Pipeline 选项卡中,输入脚本示例:
    pipeline {
        agent any
        stages {
            stage('Checkout') {
                steps {
                    git 'https://github.com/your-repo.git'
                }
            }
            stage('Build') {
                steps {
                    sh 'mvn clean package'
                }
            }
            stage('Test') {
                steps {
                    sh 'mvn test'
                }
            }
            stage('Deploy') {
                steps {
                    sh 'docker build -t myapp .'
                    sh 'docker push myrepo/myapp'
                }
            }
        }
    }
    

5. 集成 Docker 和 Kubernetes

Docker 构建

  1. 确保 Jenkins 服务器已安装 Docker,并将 Jenkins 用户加入 docker 组:
    sudo usermod -aG docker jenkins
    sudo systemctl restart jenkins
    
  2. 在 Pipeline 中添加 Docker 步骤:
    stage('Docker Build') {
        steps {
            script {
                docker.build("myapp:${env.BUILD_ID}").push()
            }
        }
    }
    

Kubernetes 部署

  1. 安装 Kubernetes CLI (kubectl) 并配置 ~/.kube/config
  2. 添加 Pipeline 阶段:
    stage('Deploy to k8s') {
        steps {
            sh 'kubectl apply -f k8s/deployment.yaml'
        }
    }
    

6. 配置自动化触发

GitHub Webhook

  1. 在 GitHub 仓库 > Settings > Webhooks 中添加:
    • Payload URL: http://<Jenkins-IP>:8080/github-webhook/
    • Content type: application/json
  2. 在 Jenkins 任务中勾选 "GitHub hook trigger for GITScm polling"

Jenkinsfile(代码即配置)

  1. 在项目根目录创建 Jenkinsfile,提交到仓库。
  2. Jenkins 任务选择 "Pipeline script from SCM",指定仓库和文件路径。

7. 监控与安全


8. 常见问题解决


总结

完成后,团队可实现代码提交后自动触发测试和部署,显著提升交付效率! 🚀


Revision #1
Created 26 May 2025 07:29:02 by Admin
Updated 26 May 2025 07:29:32 by Admin