在Debian上部署Jenkins并实现自动化部署涉及多个步骤,包括环境搭建、插件安装、流水线配置等。以下是一个详细的实践指南:
硬件与操作系统选择
安装依赖与Jenkins
sudo apt update && sudo apt install -y openjdk-11-jdk
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
sudo systemctl enable jenkins
sudo systemctl start jenkins
sudo systemctl status jenkins # 确认状态为Active
sudo ufw allow 8080/tcp
sudo ufw allow 50000/tcp
sudo ufw reload
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
。ssh-keygen -t rsa -b 4096 -f ~/.ssh/jenkins_github
cat ~/.ssh/jenkins_github.pub # 复制公钥到GitHub的Deploy Keys
以下是一个简单的声明式Pipeline示例:
pipeline {
agent any
stages {
stage('Checkout') {
steps {
git branch: 'main', url: 'git@github.com:your-repo.git'
}
}
stage('Build & Test') {
steps {
sh './gradlew build' // 注意脚本权限:chmod +x gradlew
junit 'build/test-results/**/*.xml'
}
}
stage('Deploy to Production') {
when {
branch 'main'
}
steps {
sh 'kubectl apply -f deployment.yaml' // 根据环境动态切换namespace
}
}
}
}
docker run -d --name jenkins-agent \
-v /var/run/docker.sock:/var/run/docker.sock \
-e JENKINS_URL=http://master-ip:8080 \
-e JENKINS_AGENT_NAME=agent
通过以上步骤,你可以在Debian上成功搭建并配置Jenkins,实现自动化部署。根据具体需求,你还可以进一步扩展和优化Jenkins的配置和功能。