在Debian上设置Jenkins以实现自动化构建涉及几个关键步骤。以下是一个详细的指南,帮助你完成整个过程:
sudo apt update
sudo apt install openjdk-11-jdk
java -version
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ /etc/apt/sources.list.d/jenkins.list'
sudo apt update
sudo apt install jenkins
sudo systemctl enable jenkins
sudo systemctl start jenkins
sudo systemctl status jenkins
sudo ufw allow 8080/tcp
sudo ufw allow 50000/tcp
sudo ufw reload
解锁Jenkins:访问 http://服务器IP:8080,输入初始密码(可以在 /var/lib/jenkins/secrets/initialAdminPassword
中找到)。
加速插件安装:更换国内镜像源,进入 Manage Jenkins - Plugin Manager - Advanced,将Update Site替换为国内镜像(如清华源),安装必备插件:Pipeline、GitHub Integration、Docker、Kubernetes CLI、Credentials Binding。
权限安全配置:禁用匿名访问,进入 Manage Jenkins - Security - Enable security,选择 Logged-in users can do anything,创建管理员用户,设置用户名、密码和邮箱,避免使用默认账号“admin”。
ssh-keygen -t rsa -b 4096 -f ~/.ssh/jenkins_github
cat ~/.ssh/jenkins_github.pub
在Jenkins中配置凭据:进入 Manage Jenkins - Credentials - System - Global credentials,添加SSH私钥(类型:SSH Username with private key),ID命名为 github-ssh。
创建声明式流水线项目:新建Pipeline任务,任务名:demo-pipeline。选择 Pipeline script from SCM,配置Git仓库地址与凭据。
自动化构建配置:
安装必要的插件:在Jenkins控制台中,导航到“Manage Jenkins” - “Manage Plugins”,安装Build with Parameter、git插件、gitlab插件、ssh插件、Maven Integration插件等。
配置构建触发器:在任务配置中,选择适当的构建触发器,常见的是选择“GitHub hook trigger for GITScm polling”,以便在GitHub上代码提交时触发构建。
GitHub Webhook设置:在GitHub仓库中,导航到 Settings - Webhooks,点击Add webhook,输入Jenkins的webhook URL(Jenkins服务器地址 /github-webhook/),选择适当的事件(常见的是选择Just the push event),确保启用webhook。
通过以上步骤,你就可以在Debian上成功设置Jenkins以实现自动化构建。每次在GitHub上提交代码时,Jenkins将自动触发构建,确保你的项目能够始终保持最新、可靠的状态。