Jenkins支持多種安裝方式:yum安裝、war包安裝、Docker安裝等。
官方下載地址:https://www.jenkins.io/zh/download
本次實驗使用yum方式安裝Jenkins LTS長期支持版,版本為 2.462.3。
一、Jenkins基礎環境的安裝與配置
1.1:基本環境設置
[root@localhost ~]# hostnamectl set-hostname jenkins;bash
[root@jenkins ~]# systemctl stop firewalld && systemctl disable firewalld
[root@jenkins ~]# sed -i '/^SELINUX=/s/enforcing/disabled/' /etc/selinux/config
[root@jenkins ~]# setenforce 0
[root@jenkins ~]# ntpdate ntp.aliyun.com
[root@jenkins ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@jenkins ~]# yum clean all && yum makecache
1.2:安裝git
為了讓Jenkins從Gitlab拉取源碼,需要安裝Git插件以及在主機上安裝Git工具。
[root@jenkins ~]# yum install -y git
1.3:安裝JDK
Jenkins需要Java運行環境,Jenkins從版本2.357開始,不再支持JDK8。建議使用JDK11或更高版本。從版本2.463開始,不再支持JDK11。
Jenkins依賴JDK版本,查看地址:
https://www.jenkins.io/doc/book/platform-information/support-policy-java
(1)安裝jdk
[root@jenkins ~]# yum -y install fontconfig
[root@jenkins ~]# tar zxvf jdk-11.0.16.1_linux-x64_bin.tar.gz
[root@jenkins ~]# mv jdk-11.0.16.1 /usr/local/java
[root@jenkins ~]# ln -s /usr/local/java/bin/java /usr/bin
(2)設置jdk環境變量
[root@jenkins ~]# vim /etc/profile
#文件末尾添加
export JAVA_HOME=/usr/local/java
export CLASSPATH=$JAVA_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH[root@jenkins ~]# source /etc/profile
(3)查看jdk版本
[root@jenkins ~]# java -version
java version "11.0.16.1" 2022-08-18 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.16.1+1-LTS-1)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.16.1+1-LTS-1, mixed mode)
1.4:安裝Maven環境
- 通常,Jenkisn構建JAVA項目離不開Maven工具。因此需要安裝Maven環境。
(1)安裝maven
[root@jenkins ~]# tar zxvf apache-maven-3.8.6-bin.tar.gz
[root@jenkins ~]# mv apache-maven-3.8.6 /usr/local/maven
(2)設置maven環境變量
[root@jenkins ~]# vim /etc/profile
#在文件末尾添加
export MAVEN_HOME=/usr/local/maven
export PATH=$PATH:$MAVEN_HOME/bin
[root@jenkins ~]# source /etc/profile
(3)查看maven版本
[root@jenkins ~]# mvn -version
Apache Maven 3.8.6 (84538c9988a25aec085021c365c560670ad80f63)
Maven home: /usr/local/maven
Java version: 11.0.16.1, vendor: Oracle Corporation, runtime: /usr/local/java
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-1160.el7.x86_64", arch: "amd64", family: "unix"
(4)修改maven更新源
[root@jenkins ~]# cp /usr/local/maven/conf/settings.xml{,.bak}
[root@jenkins ~]# vim /usr/local/maven/conf/settings.xml
#修改maven的倉庫<mirrors>
<mirror><id>aliyunmaven</id> #160行開始修改<mirrorOf>*</mirrorOf><name>阿里云公共倉庫</name><url>https://maven.aliyun.com/repository/public</url>
</mirror></mirrors>
1.5:安裝NodeJS環境
使用Jenkins構建NodeJS項目的時候,需要gcc的編譯環境,不同的項目NodeJS的版本也不一樣,在進行部署的時候要根據項目的依賴版本進行選擇。
[root@jenkins ~]# yum -y install automake autoconf libtool make
[root@jenkins ~]# yum -y install gcc gcc-c++[root@jenkins ~]# tar zxvf node-v14.18.0-linux-x64.tar.gz
[root@jenkins ~]# mv node-v14.18.0-linux-x64 /usr/local/nodejs14
[root@jenkins ~]# ln -s /usr/local/nodejs14/bin/* /usr/local/bin
1.6:安裝Jenkins
(1)添加jenkins倉庫源
[root@jenkins ~]# rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
[root@jenkins ~]# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
(2)安裝jenkins
#查看jenkins所有版本軟件包
[root@jenkins ~]# yum list jenkins --showduplicates | sort -r[root@jenkins ~]# yum -y install jenkins-2.462.3
備注:
/usr/share/java/jenkins.war #jenkins WAR包存放位置
/var/lib/jenkins/ #jenkins家目錄
/usr/lib/systemd/system/jenkins.service #jenkins服務啟動文件
(3)修改jenkins端口
[root@jenkins ~]# vim /usr/lib/systemd/system/jenkins.service
#如果jenkins的端口和其他端口有沖突,可在這個文件中修改
Environment="JENKINS_PORT=8088" #默認為8080
(4)啟動jenkins
[root@jenkins ~]# systemctl daemon-reload
[root@jenkins ~]# systemctl enable jenkins --now
(5)查看Jenkins端口
[root@jenkins ~]# netstat -anpt |grep java
tcp6 0 0 :::8088 :::* LISTEN 13888/java
1.7:修改Jenkins插件更新源配置文件
[root@jenkins ~]# cd /var/lib/jenkins/updates/
[root@jenkins updates]# cp default.json{,.bak}
[root@jenkins updates]# sed -i 's#https://www.jenkins.io#https://mirrors.huaweicloud.com/jenkins#g' default.json
[root@jenkins updates]#
[root@jenkins updates]# sed -i 's#https://www.google.com#https://www.baidu.com#g' default.json
二、Jenkins初始化
(1)登錄Jenkins
瀏覽器輸入地址:http://192.168.10.134:8088
查看初始密碼
[root@jenkins updates]# cat /var/lib/jenkins/secrets/initialAdminPassword
5b91dbff93c642229238fb48e31bbbca #每個人密碼都不一樣
(2)安裝推薦插件
注意:
由于網絡原因,Jenkins插件可能安裝失敗,也可以跳過插件安裝過程,等待Jenkins安裝好后,登錄到Jenkins再安裝插件。
(3)創建管理員賬號
管理員賬號和密碼都設置為 admin,密碼任意。
(4)保存并完成
(5)修改時區
操作步驟:右上角admin用戶----> 設置----> 更改時區,最后點擊 “保存” 。
三、Jenkins配置
3.1:修改Jenkins插件更新源
由于Jenkins服務器在國外,國內在安裝Jenkins時,選擇默認在線安裝插件會很慢,甚至會失敗,跳過這一步,待Jenkins啟動后,修改插件安裝地址,再安裝插件。
(1)設置國內插件源
操作步驟:點擊 “Manage jenkins”—> “Plugins”—> “Advanced settings” 最下面Update Site(升級站點),設置為如下鏈接,并點擊 “提交” 按鈕。
https://mirrors.huaweicloud.com/jenkins/updates/update-center.json
(2)重啟Jenkins
瀏覽器輸入地址:http://192.168.10.134:8088/restart
3.2:安裝插件
(1)安裝插件
操作步驟:點擊 “Manage jenkins”—> “Plugins”—> “Available plugins”,輸入要安裝的插件,并點擊 “安裝”。
生產環境中經常用到的插件如下:
Git Parameter
Git Pipeline for Blue Ocean
GitLab
Blue Ocean
Blue Ocean Pipeline Editor
Blue Ocean Core JS
Pipeline SCM API for Blue Ocean
Dashboard for Blue Ocean
Build With Parameters
Extended Choice Parameter
Kubernetes
Kubernetes CLI
Kubernetes Credentials
Image Tag Parameter
Active Choices
SSH
Ansible
Maven Integration
Publish Over SSH
Role-based Authorization Strategy
NodeJS
Git
Credentials
Credentials Binding
Dynamic Extended Choice Parameter
Dynamic Parameter Plug-In
Pipeline
Pipeline: Declarative
Localization: Chinese (Simplified)
(2)重啟Jenkins
[root@jenkins ~]# systemctl restart jenkins
3.3:配置全局工具
操作步驟:點擊“Manage jenkins”—> “System Configuration”—> “Tools”,配置JDK、Maven、Nodejs等工具。配置如下:
最后,點擊 “保存” 。
總結:整理不易,如果對你有幫助,請記得點贊,關注,收藏。更多DeveOps相關知識持續分享中。