第二章 Jenkins的詳細介紹
阿新 • • 發佈:2021-06-28
一、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變數也被稱為引數化構建。