在 Debian 上搭建 Jenkins 集群可以通過多種方式實現,其中一種常見的方法是使用 Docker 和 Docker Compose。以下是一個基本的步驟指南:
更新包列表
sudo apt update
安裝必要的包
sudo apt install apt-transport-https ca-certificates curl software-properties-common
添加 Docker 的官方 GPG 密鑰
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
添加 Docker 的 APT 倉庫
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
更新包列表
sudo apt update
安裝 Docker CE
sudo apt install docker-ce
安裝 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
創建 Jenkins 配置文件
創建一個 docker-compose.yml
文件來定義 Jenkins 集群的配置。
version: '3.8'
services:
jenkins_master:
image: jenkins/jenkins:lts
container_name: jenkins_master
ports:
- "8080:8080"
- "50000:50000"
volumes:
- jenkins_master_data:/var/jenkins_home
- ./jenkins_master/config.sh:/usr/local/bin/config.sh
jenkins_slave:
image: jenkins/jenkins:lts
container_name: jenkins_slave
environment:
- JENKINS_URL=http://jenkins_master:8080
volumes:
- jenkins_slave_data:/var/jenkins_home
command: agent -jnlpUrl http://jenkins_master:8080/computer/slave-agent.jnlp -secret 12345678 -workDir /var/jenkins_home
depends_on:
- jenkins_master
volumes:
jenkins_master_data:
jenkins_slave_data:
配置 Jenkins Master
創建一個 config.sh
文件來配置 Jenkins Master。
#!/bin/bash
# 配置 Jenkins Master
cat <<EOF >> /usr/local/bin/config.sh
#!/bin/bash
# 啟動 Jenkins Master
/usr/local/bin/jenkins.sh start
EOF
啟動 Jenkins 集群
在包含 docker-compose.yml
文件的目錄中運行以下命令來啟動 Jenkins 集群。
docker-compose up -d
訪問 Jenkins Master
打開瀏覽器并訪問 http://<your_debian_ip>:8080
,你應該能夠看到 Jenkins 的安裝頁面。
配置 Jenkins Slave
在 Jenkins Master 頁面中,導航到 Manage Jenkins
-> Manage Nodes and Clouds
-> New Node
,然后按照向導添加一個新的 Jenkins Slave。
jenkins_slave
。/var/jenkins_home
。Launch agent via Java Web Start
。http://jenkins_master:8080/computer/slave-agent.jnlp
。Use secret text
并輸入 12345678
。保存并啟動 Slave
保存配置并啟動 Slave 節點。Slave 節點將會連接到 Jenkins Master 并開始工作。
通過以上步驟,你就可以在 Debian 上成功搭建一個 Jenkins 集群。你可以根據需要添加更多的 Slave 節點,并根據實際需求進行進一步的配置和優化。