Jenkins,作為一個開源的CI/CD工具,憑借其豐富的插件生態系統、可視化構建流程和分布式構建能力,贏得了眾多開發團隊的青睞
本文將詳細介紹如何在Linux環境下配置Jenkins,從環境準備到安裝部署,再到插件安裝和日常管理,全面覆蓋Jenkins配置的各個環節
一、環境準備 在正式配置Jenkins之前,我們需要先準備好以下基礎環境: 1.JDK環境準備 Jenkins是基于Java開發的,因此首先需要安裝JDK
在Linux環境中,可以通過以下命令安裝JDK(以OpenJDK 11為例): bash sudo apt update sudo apt install openjdk-11-jre 安裝完成后,可以通過`java -version`命令確認JDK是否安裝成功
2.Maven環境準備 Maven是一個項目管理和構建工具,很多Java項目都使用Maven來管理依賴和構建項目
可以通過以下命令安裝Maven: bash sudo apt install maven 安裝完成后,可以通過`mvn -v`命令確認Maven是否安裝成功
3.Git環境準備 Git是一個分布式版本控制系統,Jenkins通常用于從Git倉庫中拉取代碼進行構建
可以通過以下命令安裝Git: bash sudo apt install git 安裝完成后,可以通過`git --version`命令確認Git是否安裝成功
二、安裝部署Jenkins Jenkins的安裝部署可以通過多種方式實現,包括使用war包、通過APT包管理器或者通過Docker容器
這里我們將介紹使用war包和Docker兩種方式
1. 使用war包安裝Jenkins (1)下載Jenkins 首先,從Jenkins的官方下載頁面(https://www.jenkins.io/zh/download/)下載對應版本的war包
注意選擇與JDK版本兼容的Jenkins版本
(2)啟動war包 將下載好的Jenkins war包上傳到服務器上,并編輯啟動腳本: !/bin/bash JAR_NAME=jenkins.war pid=`ps -ef | grep $JAR_NAME | grep -v grep | awk{print $2}` LOG_PATH=/data/jenkins/nohup.out if 【 -z $pid 】; then nohup java -jar $JAR_NAME --httpPort=8080 --prefix=/jenkins > $LOG_PATH 2>&1 & echo Service $JAR_NAME is started! pid=$pid tail -f $LOG_PATH else kill -9 $pid nohup java -jar $JAR_NAME --httpPort=8080 --prefix=/jenkins > $LOG_PATH 2>&1 & echo Service $JAR_NAME is restarted! pid=$pid tail -f $LOG_PATH fi 保存并退出后,設置腳本權限并啟動Jenkins: chmod +x start.sh ./start.sh (3)瀏覽器訪問 在瀏覽器中輸入服務器的IP地址和端口號(如`http://<服務器IP>:8080/jenkins`),進入Jenkins的初始配置頁面
(4)插件安裝與創建管理員賬號 根據頁面提示,解鎖Jenkins并安裝推薦的插件,然后創建管理員賬號并登錄
2. 使用Docker安裝Jenkins (1)下載并安裝Docker 首先,確保系統上已經安裝了Docker
如果沒有安裝,可以參考Docker的官方文檔進行安裝
(2)拉取Jenkins鏡像 從Docker Hub上拉取Jenkins的鏡像: docker pull jenkins/jenkins:lts (3)創建工作目錄并設置權限 mkdir -p /var/jenkins_home chown -R 1000 /var/jenkins_home (4)運行Jenkins容器 docker run -d -p 8888:8080 -p 50000:50000 -v /var/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime -v $(which docker):/usr/bin/docker -v /var/run/docker.sock:/var/run/docker.sock --privileged=true --restart=always --name jenkins jenkins/jenkins:lts (5)配置Jenkins插件下載源 由于默認的Jenkins插件下載源在國外,可能會導致下載速度緩慢或失敗
因此,建議將插件下載源修改為國內的鏡像源,如清華大學開源軟件鏡像站
進入Jenkins容器,修改`hudson.model.UpdateCenter.xml`文件中的URL: docker exec -it jenkins bash cd /var/jenkins_home vi hudson.model.UpdateCenter.xml 將URL修改為: http://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/upd