日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Jenkins安装和持续集成环境配置

發布時間:2024/3/24 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Jenkins安装和持续集成环境配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Jenkins安裝和持續集成環境配置

  • 持續集成說明
  • Jenkins安裝
  • Jenkins插件管理
    • 下載中文漢化插件
  • Jenkins用戶權限管理
    • 安裝Role-based Authorization Strategy插件
    • 開啟全局安全策略
    • 創建角色
    • 創建用戶
    • 給用戶分配權限
  • Jenkins的憑證管理
    • 安裝Credentials Binding插件
  • 安裝Git插件和Git工具
  • 用戶密碼類型
    • 創建憑證
    • 測試憑證是否可用
  • SSH密鑰類型
    • SSH免登錄示意圖
    • 使用root用戶生成公鑰和私鑰
    • 把生成的公鑰放到Gitlab中
    • 在Jenkins中添加憑證,配置私鑰
    • 測試憑證是否可用
  • Maven的安裝和配置
  • 全局工具關聯JDK和Maven
  • 添加Jenkins全局變量
    • 測試Maven是否配置成功
  • 擴展


持續集成說明

● 首先,開發人員每天進行代碼提交,提交到Git倉庫。
● Jenkins作為持續集成工具,使用Git工具到Git倉庫拉取代碼到持續集成服務器,再配合JDK,Maven等軟件完成代碼的編譯、測試、審核、打包等工作,在這個過程中每一步出錯,都重新再執行一次整個流程。
● 最后,Jenkins把生成的jar包分發到測試服務器或者生產服務器,測試人員或用戶就可以訪問應用了。


Jenkins安裝

  • Jenkins由Java編寫,因此首先確保服務器上的jdk環境已經配置正確
卸載默認的JDK: - 查詢系統已安裝的JDK: yum list installed | grep -i java - 卸載默認的JDK: yum remove xxx - 安裝JDK11 yum -y install java-11-openjdk-devel
  • 下載Jenkins:
    • jenkins的rpm/war包下載地址 https://mirrors.jenkins-ci.org/
  • 安裝Jenkins
rpm -ivh jenkins-2.263-1.1.noarch.rpm
  • 修改Jenkins的配置
#低版本配置文件路徑 vim /etc/sysconfig/jenkins #高版本配置文件路徑 vim /usr/lib/systemd/system/jenkins.service#低版本配置文件修改: #Jenkins安裝完成后默認會創建一個jenkins的用戶,并以jenkins用戶運行,在我們通過jenkins編寫一些命令的時候容易出現權限不足的 #因此我們將jenkins以root用戶運行 JENKINS_USER="root" #更改jks默認啟動端口--默認為8080 JENKINS_PORT="8888"

高版本配置文件修改過程類似。

#修改配置后,重新加載配置 systemctl daemon-reload #如果jks已經啟動了,那么還需要重啟jks service jenkins restart
  • 啟動Jenkins
systemctl start jenkins
  • 開機自啟動
systemctl enable jenkins
  • 訪問測試
http://服務器ip:8888

  • 獲取并輸入密碼
cat /var/lib/jenkins/secrets/initialAdminPassword

  • 跳過插件安裝

因為Jenkins插件需要默認連接官網下載,速度巨慢,而且經常會失敗,所以可以暫時跳過插件安裝


  • 添加一個管理員賬戶,并進入Jenkins后臺


Jenkins插件管理

Jenkins本身不提供很多功能,我們可以通過使用插件來滿足我們的使用。比如從Gitee拉取代碼,使用Maven構建項目等功能都需要依靠插件完成。

  • 修改Jenkins插件的下載地址

● Jenkins國外官方插件地址下載速度非常慢,所以我們需要手動修改為國內插件地址。

● Jenkins–>Manage Jenkins–>Manage Plugins,點擊Available。


這么做的目的是為了將Jenkins官方的插件列表下載到本地。

  • 修改地址文件,替換為國內插件地址:
cd /var/lib/jenkins/updatessed -i 's#http:\/\/updates.jekins-ci.org\/download#https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins#g' default.json && sed -i '#/http:\/\/www.google.com#https:\/\/www.baidu.com#g' default.json
  • 點擊Manage Plugins中的Advanced,將Update SIte改為國內插件下載地址:
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

  • 點擊submit后,在瀏覽器輸入http://xxx:8888/restart,重啟Jenkins。

下載中文漢化插件

  • Jenkins–>Manage Jenkins–>Manage Plugins,點擊Available,搜索“Chinese”。



  • 重啟Jenkins后,就看到Jenkins漢化了(但是,可能部分菜單漢化會失敗)。


Jenkins用戶權限管理

  • Jenkins本身的授權管理是很粗糙的,我們可以使用“Role-based Authorization Strategy”插件來管理Jenkins的用戶權限。

安裝Role-based Authorization Strategy插件


開啟全局安全策略

  • 授權策略切換為“Role-Based Stragegy”,保存。

  • 還需要允許用戶的創建和注冊

創建角色

  • Manage Jenkins–>Manage and Assign Roles:

  • 點擊“Manage Roles”:

  • Global roles:全局角色,管理員等高級用戶可以創建基于全局的角色。

  • Item roles:項目角色,針對某個或某些項目的角色。

  • Node roles:節點角色,節點相關權限的角色。

● 添加下面三個角色:

○ baseRole:該角色為全局角色。這個角色需要綁定Overall下面的Read權限,是為了給所有用戶綁定最基本的Jenkins的訪問權限。注意:如果不給后續的用戶綁定這個角色,會報錯:用戶名 is missing the Overall/Read Permission。

○ role1:該角色為項目角色。使用正則表達式綁定“spring.*”,意思是只能操作spring開頭的項目。

○ role2:該角色為項目角色。使用正則表達式綁定“springboot.*”,意思是只能操作springboot開頭的項目。


【Jenkins】登錄失敗的問題


創建用戶

  • Manage Jenkins–>Manage Users–>新建用戶:


  • 分別創建兩個用戶:xpy和cjdhy


給用戶分配權限

  • Manage Jenkins–>Manage and Assign Roles–>Assign Roles:

● 綁定規則如下:

○ xpy用戶分別綁定baseRole和role1角色。

○ cjdhy用戶分別綁定baseRole和role2角色。


Jenkins的憑證管理

憑證可以用來存儲需要密文保護的數據庫密碼、GitHub密碼信息、Docker私有倉庫密碼等,以便Jenkins可以和這些第三方應用進行交互。


安裝Credentials Binding插件

要在Jenkins使用憑證管理功能,需要安裝Credentials Binding插件。

  • 安裝插件后,多了“管理憑證”的菜單,在這里管理所有的憑證信息:

  • 可以添加的憑證有5種:


● Username with password:用戶名和密碼。
● SSH Username with private key:使用SSH用戶和密鑰。
● Secret file:需要保密的文本文件,使用時Jenkins會將文件復制到一個臨時目錄中,再將文件路徑設置到一個變量中,等構建結束后,所復制的Secret file就會被刪除。
● Secret text:需要保密的一個加密的文本串,比如釘釘或GitHub的api token。
● Certificate:通過上傳證書文件的方式。

常用的憑證類型有:Username with password(用戶名密碼)和SSH Username with private key(SSH密鑰)。


安裝Git插件和Git工具

● 為了讓Jenkins支持從Gitee上拉取源碼,需要安裝Git插件以及在Centos7上安裝Git工具。

● Git插件的安裝:

  • 在CentOS7上安裝Git:
yum install -y git git --version

用戶密碼類型

創建憑證

● Jenkins–>憑證–>系統–>全局憑證–>添加憑證:



測試憑證是否可用

創建自由項目:


  • 復制對應項目的url

  • 找到“源碼管理”–>“Git”,將要構建項目的倉庫地址復制進去

  • 此時,會報錯說無法連接到倉庫,那是因為沒有選擇剛才添加的憑證

  • 點擊構建“Build Now”開始構建項目:

  • 查看/var/lib/jenkins/workspace/目錄,可用發現已經從Gitee中成功拉取代碼到Jenkins中。


SSH密鑰類型

SSH免登錄示意圖

使用root用戶生成公鑰和私鑰

● 使用root用戶生成公鑰和私鑰:

ssh-keygen -t rsa

  • 默認生成的公鑰和私鑰在/root/.ssh目錄中,其中id_rsa是私鑰文件,id_rsa.pub是公鑰文件:
ll /root/.ssh

把生成的公鑰放到Gitlab中

● 以root賬戶登錄–>點擊頭像–>Settings–>SSH Keys。

● 復制剛才生成的id_rsa.pub文件的內容,點擊“Add Key”:

在Jenkins中添加憑證,配置私鑰

  • 在Jenkins中添加憑證,類型為“SSH Username with private key”,把剛才生成的私鑰文件的內容復制進去。


測試憑證是否可用

  • 新建“test02”項目–>源碼管理–>Git,這里要使用Gitlab的SSH連接,并且選擇SSH憑證:

同樣嘗試構建項目,如果代碼可以正常拉取,則代表憑證配置成功。


Maven的安裝和配置

  • 下載、安裝和配置Maven
#下載 wget https://mirrors.bfsu.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.zip --no-check-certificate #解壓 unzip -d /usr/local apache-maven-3.6.3-bin.zip #配置環境變量: vim /etc/profile| \|/ # 增加到文件的末尾 export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.9.11-2.el7_9.x86_64 export MAVEN_HOME=/usr/local/apache-maven-3.6.3 export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin| \|/ # 刷新配置文件 source /etc/profile| \|/ #查看是否安裝成功: mvn -v

修改Maven的本地倉庫,并配置阿里云鏡像:

cd /usr/local/apache-maven-3.6.3 mkdir repository vim conf/settings.xml <!-- 修改內容 --> <localRepository>/usr/local/apache-maven-3.6.3/repository</localRepository>

<mirrors><!-- 修改內容 --><mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>阿里云公共倉庫</name><url>https://maven.aliyun.com/repository/public</url></mirror> </mirrors>


全局工具關聯JDK和Maven

  • Jenkins–>Manage Jenkins–>Global Tool Configuration–>JDK–>新增JDK:


JDK11 /usr/lib/jvm/java-11-openjdk-11.0.9.11-2.el7_9.x86_64
  • Jenkins–>Manage Jenkins–>Global Tool Configuration–>Maven->新增Maven:

apache-maven-3.6.3 /usr/local/apache-maven-3.6.3

添加Jenkins全局變量

  • Jenkins–>Manage Jenkins–>Configure System–>Global Properties,添加三個全局變量:JAVA_HOME、M2_HOME和PATH+EXTRA。


JAVA_HOME /usr/lib/jvm/java-11-openjdk-11.0.9.11-2.el7_9.x86_64M2_HOME /usr/local/apache-maven-3.6.3PATH+EXTRA $M2_HOME/bin

測試Maven是否配置成功

  • 對之前構建的測試項目,增加新的構建步驟

輸入如下的構建命令:

mvn clean install

  • 再次構建,如果將項目打成jar包,代表Maven環境配置成功。


擴展

對于Maven項目部署來說,推薦安裝下面這個插件,從而直接根據項目的pom文件進行項目的部署。

總結

以上是生活随笔為你收集整理的Jenkins安装和持续集成环境配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。