1. 程式人生 > 其它 >第八章 jenkins的詳細介紹

第八章 jenkins的詳細介紹

一、jenkins的安裝

1.安裝java

[root@jenkins ~]# yum install java-1.8.0-openjdk* -y

2.安裝jenkins

1)第一種方式

# 官方推薦
# 下載映象源
[root@jenkins ~]# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

# 安裝認證Key
[root@jenkins ~]# rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

# 安裝JenKins
[root@jenkins ~]# yum install jenkins -y

2)第二種方式

# 下載安裝包
[root@jenkins ~]# wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.249.1-1.1.noarch.rpm
或
[root@jenkins ~]# rz jenkins-2.249.1-1.1.noarch.rpm

#安裝jenkins
[root@jenkins ~]# yum localinstall jenkins-2.249.1-1.1.noarch.rpm

3.啟動jenkins並設定開機自啟

[root@jenkins ~]# systemctl enable jenkins
[root@jenkins ~]# systemctl start jenkins

4.網頁登入

10.0.0.62:8080

5.獲取初始密碼

[root@jenkins ~]# cat /var/lib/jenkins/secrets/initialAdminPassword

二、jenkins外掛管理

1.安裝外掛

#1.上傳外掛包
[root@jenkins ~]# cd /var/lib/jenkins/plugins
[root@jenkins /var/lib/jenkins/plugins]# rz plugins.tar.gz

#2.解壓外掛包
[root@jenkins /var/lib/jenkins/plugins]# tar xf plugins.tar.gz

#3.檢視安裝外掛
登入頁面-->系統管理-->外掛管理

2.更換外掛源

# 切換至配置檔案目錄
[root@jenkins /var/lib/jenkins/plugins]# cd /var/lib/jenkins/updates

# 換源
[root@jenkins /var/lib/jenkins/updates]# sed -i 's/http:\/\/updates.jenkinsci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json
或
[root@jenkins /var/lib/jenkins/updates]# sed -i 's/http:\/\/updates.jenkinsci.org\/download/https:\/\/mirrors.aliyun.com\/jenkins/g' default.json

[root@jenkins /var/lib/jenkins/updates]# sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

3.升級站點

# 外掛管理點選高階,把站點升級改為國內外掛下載地址:
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
或
https://mirrors.aliyun.com/jenkins/updates/update-center.json

4.重啟服務

[root@jenkins ~]# systemctl restart jenkins

三、jenkins使用者許可權

我們可以利用Role-based Authorization Strategy 外掛來管理Jenkins使用者許可權

1.開啟許可權全域性安全配置

2.建立角色

Global roles(全域性角色):管理員等高階使用者可以建立基於全域性的角色 
Item roles(專案角色): 針對某個或者某些專案的角色 
Node roles(節點角色):節點相關的許可權
Base: 設定成所有的使用者都有檢視的許可權
Alvin: 設定以alvin開頭的專案有超管許可權
Oldboy:設定以oldboy開頭的專案有超管許可權

3.建立使用者

4.分配角色

四、jenkins憑證管理

1.jenkins憑證管理簡介

要在Jenkins使用憑證管理功能,需要安裝Credentials Binding外掛。
1.	Username with password:使用者名稱和密碼
2.	SSH Username with private key: 使用SSH使用者和金鑰
3.	Secret file:需要保密的文字檔案,使用時Jenkins會將檔案複製到一個臨時目錄中,再將檔案路徑 設定到一個變數中,等構建結束後,所複製的Secret file就會被刪除。
4.	Secret text:需要儲存的一個加密的文字串,如釘釘機器人或Github的api token Certificate:通過上傳證書檔案的方式
5.	X.509:證書,一般使用第三方雲服務時使用。
6.	Certificate:docker私有倉庫密碼儲存型別。

2.jenkins憑證密碼登入

Username with password:使用者名稱和密碼

3.jenkins憑證金鑰登入

#1.生成公鑰對
[root@jenkins /var/lib/jenkins/updates]# ssh-keygen -t rsa

#2.檢視公鑰
[root@jenkins /var/lib/jenkins/updates]# cat /root/.ssh/id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDFSuphRl/Tl2rcEMaXb5Gn05l5KUyQJcqE8hYiGiW9oPr1ZeKZQgYAksiOQ0fVwgVZZ7N+rTDI3qz9+OztO8GZCLjLuDy8LMK0YfNCsoN7l6oz9dwfN3hkcbtf57lwla5BNCVL+mYbnQhAXFNXYRUkll7GbZyp8e44hyrPiBUsTwy9FnC3XHl+lrf1QXOs9pDA3fJRF0mwSeqot+MXZ7aoC1zvRgC9EOOAXrWuW+aOn+4JgNpGDZTtXxCutOph66UnaoLxsgUJ41HgC0iSl0gPAdHjAvkEjU2zNQPRm0Na/hIl8ZHUA6ChdRQj6zzE8oliyu5JwUROGjrHtqkk+DXX root@jenkins

#3.檢視私鑰
[root@jenkins /var/lib/jenkins/updates]# cat /root/.ssh/id_rsa
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAxUrqYUZf05dq3BDGl2+Rp9OZeSlMkCXKhPIWIholvaD69WXi
mUIGAJLIjkNH1cIFWWezfq0wyN6s/fjs7TvBmQi4y7g8vCzCtGHzQrKDe5eqM/Xc
Hzd4ZHG7X+e5cJWuQTQlS/pmG50IQFxTV2EVJJZexm2cqfHuOIcqz4gVLE8MvRZw
t1x5fpa39UFzrPaQwN3yURdJsEnqqLfjF2e2qAtc70YAvRDjgF61rlvmjp/uCYDa
Rg2U7V8QrrTqYeulJ2qC8bIFCeNR4AtIkpdIDwHR4wL5BI1NszUD0ZtDWv4SJfGR
1AOgoXUUI+s8xPKJYsruScFETho6x7apJPg11wIDAQABAoIBAFiGGtB24TxxrnL7
2//LAdIJ8c0ZqM7tBgfND/1ROinx92jwxFH7+/F56x9aNPtGyVuqWjG2yDL5Jyn1
7Wks7NsbvL879ZSBiQOjB6Gfs7ta+/XAlXo0S4LWPTr1IJHRt5RuL2X9/p7ZQQCP
7J1CZFg8WF40hJ0Eft1CWQUxjD6Kl6WW7oExonNPS08+smtEVInBKALHyojqJQx4
N/7LYknLCnVgWQX+ufZN9zqhFL20B0N1YF07G8NlYilMPYiUaemRW+3PEfxjeWB9
zrvmO6YE62dNKnadJyr50nRPdbRn5ZMpck555bYjc04CyfiMXDDuqRqhWDSxuhHb
fXWZVrECgYEA7n6bMc4n6347vPEK8BTxMHmItp4mqd4FPL47BpdAdFATl+vohR9v
BNsxbNnexu2PDDF7bN/hlme5H3wNnm+26bDnPOfLohtl2r9HeFbNACAm87HTb6DS
xu8w02aGp453nZ1DrFoNM7whO9ThihxjuEWfdZlNHMsHEexsLywrTmsCgYEA08Yc
ffTjG3GII+23o9cPqv2C3tykWdJDKjXwEY/PxljB2CCTElxb7a4BTqzSp2WDIKJE
P8+M4U0jYLq808zb5Rx3oTZKVGpKOcDIarFX9iq136uQyA4euyNaRq+zGsOdMdbH
KjwZG3ZavqYleCCFBnOF43rJsHhHxS4NG2+S+UUCgYEAzilLZsZa48r/QNjtJ5Qy
2kB02cfkjDqMNHIM/CmLYgBGr7ESEuGVSpFgLEQ5u6RnX5b2pqrxit6mvHy0GR1g
9Kojeha1hLBCX9Gxqmj+VPl2Mnqp13kiOy1Q+61JAVa6N9lWQoqllu8tm1bukEDy
QryMl0+pxRYMSoYhDrYTyXkCgYEAre9CSYWP3mNyAKhnMw8ZFEShb2/jIM7cUVf5
tELc0TjnBR9EDEmFS4KmGjtBzTFH8M61pX9PY2Da1MCrBH52gQfPjb4scIbYLfUT
5uV/rHTJ6kpcYKOQQ/22UOZQAYR2oI+aBytTJ8YepAWMMszq1TCe4AZijylLMT0w
kL8kBM0CgYAcHbegHCFXhiH47n1ClzjP03yBtD1B9ub2u0vdNch2gMywzMZgdSmv
xXL0ZeMbagrePMvVALWrhnA1xQTQgQ99NXvFUYQhw61YPX+JWhXj3MQUiOTqLU9l
6kljNv4aPSN1uCX8YojFSW4Spdc30qHhnJN6C2e221elLXyRMs9gyw==
-----END RSA PRIVATE KEY-----

#4.gitlab配置公鑰
#5.jenkins配置私鑰

4.jenkins構建變數

Jenkins變數也被稱為引數化構建。