Debian系統下Jenkins容器化部署指南
確保Debian系統已安裝Docker(推薦使用Docker CE版本),并啟動Docker服務。若未安裝,可通過以下命令完成:
sudo apt update
sudo apt install -y docker.io
sudo systemctl start docker
sudo systemctl enable docker # 設置開機自啟
驗證Docker是否正常運行:
sudo docker run hello-world
從Docker Hub拉取官方Jenkins LTS(長期支持)鏡像(生產環境推薦,穩定性高):
sudo docker pull jenkins/jenkins:lts
使用docker run命令啟動Jenkins容器,關鍵參數說明:
-d:后臺運行容器;-p 8080:8080:將容器8080端口映射到宿主機,用于訪問Jenkins Web界面;-p 50000:50000:將容器50000端口映射到宿主機,用于Jenkins Agent節點通信;--name jenkins:指定容器名稱為jenkins(便于管理);-v jenkins_home:/var/jenkins_home:通過Docker卷持久化Jenkins數據(避免容器刪除后數據丟失);-v /var/run/docker.sock:/var/run/docker.sock(可選):掛載宿主機Docker套接字,允許容器內Jenkins直接調用宿主機Docker服務(如構建鏡像)。完整命令:
sudo docker run -d \
--name jenkins \
-p 8080:8080 \
-p 50000:50000 \
-v jenkins_home:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
jenkins/jenkins:lts
獲取初始管理員密碼:
容器啟動后,通過以下命令獲取Jenkins初始密碼(用于解鎖界面):
sudo docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
輸出結果類似123456abcdef...,復制該密碼。
解鎖Jenkins:
打開瀏覽器,訪問http://<Debian服務器IP>:8080,進入Jenkins初始化頁面。在“Unlock Jenkins”輸入框中粘貼上述密碼,點擊“Continue”。
安裝推薦插件:
選擇“Install suggested plugins”(安裝官方推薦的常用插件,如Git、Pipeline、Docker等),等待插件安裝完成。
創建管理員用戶:
在“Create First Admin User”頁面,填寫用戶名、密碼、郵箱等信息,點擊“Save and Finish”。
完成設置:
最后進入Jenkins主界面,點擊“Start using Jenkins”即可開始使用。
若需要更規范的配置(如多容器編排),可使用docker-compose.yml文件管理Jenkins部署。創建docker-compose.yml文件:
version: '3.8'
services:
jenkins:
image: jenkins/jenkins:lts
container_name: jenkins
ports:
- "8080:8080"
- "50000:50000"
volumes:
- jenkins_home:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
environment:
- JAVA_OPTS=-Djenkins.install.runSetupWizard=true # 強制顯示初始化向導
volumes:
jenkins_home:
啟動服務:
docker-compose up -d
停止服務:
docker-compose down
-v參數掛載jenkins_home卷,否則容器刪除后所有Jenkins配置、構建記錄會丟失;/jenkins/data)需提前創建,并賦予權限chown -R 1000:1000 /jenkins/data(Jenkins容器內用戶jenkins的UID為1000);docker.sock,需確保Jenkins容器內的jenkins用戶有權限訪問宿主機Docker服務(默認通過-v /var/run/docker.sock:/var/run/docker.sock實現);lts版本(長期支持,bug修復及時),避免使用latest版本(可能不穩定)。