久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

jenkins怎么用

268次閱讀
沒有評論

共計 10195 個字符,預計需要花費 26 分鐘才能閱讀完成。

這篇文章主要為大家展示了“jenkins 怎么用”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓丸趣 TV 小編帶領大家一起研究并學習一下“jenkins 怎么用”這篇文章吧。

1、jenkins 介紹

官網 https://jenkins.io

Jenkins 是一個開源的、可擴展的持續集成、交付、部署(軟件 / 代碼的編譯、打包、部署)基于 web 界面的平臺。
jenkins 的特點:

持續集成和持續交付
作為一個可擴展的自動化服務器,Jenkins 可以用作簡單的 CI 服務器,或者變成任何項目的連續交付中心。

簡易安裝
Jenkins 是一個獨立的基于 Java 的程序,可以立即運行,包含 Windows,Mac OS X 和其他類 Unix 操作系統。

配置簡單
Jenkins 可以通過其網頁界面輕松設置和配置,其中包括即時錯誤檢查和內置幫助。

插件
通過更新中心中的 1000 多個插件,Jenkins 集成了持續集成和持續交付工具鏈中幾乎所有的工具。

擴展
Jenkins 可以通過其插件架構進行擴展,從而為 Jenkins 可以做的事提供幾乎無限的可能性。

分布式
Jenkins 可以輕松地在多臺機器上分配工作,幫助更快速地跨多個平臺推動構建,測試和部署。

2、jenkins 安裝

Jenkins 通常作為一個獨立的應用程序在其自己的流程中運行,內置 Java servlet 容器 / 應用程序服務器(Jetty)。

在安裝 jenkins 之前,需要確保已經安裝了 java8 以上(可以是 Java 運行環境 JRE,也可以是 Java 開發工具包 JDK)

[root@jin-10 ~]# yum install -y java-1.8.0-openjdk

下載 jenkins 的 yum 源:

[root@jin-10 ~]# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo

安裝 jenkins 的密鑰:

[root@jin-10 ~]# rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key

安裝 jenkins:

[root@jin-10 ~]# yum install -y jenkins

啟動 jenkins:

[root@jin-10 ~]# systemctl start jenkins
[root@jin-10 ~]# ps aux|grep jenkins
jenkins 9180 88.3 9.9 2336480 99024 ? Ssl 14:20 0:07 /etc/alternatives/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins -jar /usr/libjenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon --httpPort=8080 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20
root 9214 0.0 0.1 112724 996 pts/1 S+ 14:20 0:00 grep --color=auto jenkins

然后打開瀏覽器,并輸入本機 IP:

管理員密碼可以在 /var/lib/jenkins/secrets/initialAdminPassword 文件里找到,也可以在 jenkins 日志文件中找到 /var/log/jenkins/jenkins.log
輸入管理員密碼后,點擊“繼續”,進入 jenkins 的插件安裝界面,此處我們選擇“安裝推薦的插件”:

此時 jenkins 就會自動安裝需要安裝的插件:

然后創建管理員帳戶:

最后點擊“開始使用 jenkins”:

此時會進入 jenkins 的默認界面:

jenkins 的相關目錄:

[root@jin-10 ~]# rpm -ql jenkins
/etc/init.d/jenkins #jenkins 的開啟 / 關閉 / 重啟文件
/etc/logrotate.d/jenkins
/etc/sysconfig/jenkins # 配置文件
/usr/lib/jenkins #jenkins 的主目錄
/usr/lib/jenkins/jenkins.war
/usr/sbin/rcjenkins
/var/cache/jenkins #jenkins 的緩存文件
/var/lib/jenkins # 安裝目錄
/var/log/jenkins # 日志目錄 

jenkins 的插件管理

點擊“系統管理”→“插件管理”→“已安裝”,檢查是否有“Git plugin”和“Publish Over SSH”兩個插件,如果沒有,則需點擊“可選插件”,找到它并安裝。
在 Linux 服務器上生成一對密鑰:

[root@jin-10 ~]# ssh-keygen -f/root/.ssh/jenkins
Generating public/private rsa key pair.
Created directory  /root/.ssh .
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/jenkins.
Your public key has been saved in /root/.ssh/jenkins.pub.
The key fingerprint is:
SHA256:fUC8UzU0Q8Ww5zL/zpHVMyMifRzmJ9GA0DoNQocy0Ak root@jin-10
The key s randomart image is:
+---[RSA 2048]----+
| E+ o..++ .=O+.|
| = o.o.o. o=.|
| o . =o +...|
| ++o+ oo.|
| S.o+.*o=+|
| ..o ++*|
| o.|
| .o|
| .+|
+----[SHA256]-----+

點擊“系統管理”→“系統設置”下拉,找到“Publish Over SSH”。

填寫下面的內容,測試是否能連接,然后點保存:

再新增一臺主機為 jin-11
把 jin-10 上的公鑰內容粘貼到 jin-11 的.ssh/authorized.keys 中
然后點新增:

測試連接成功后,點擊保存。

3、發布代碼

點擊“創建一個新任務”或“新建 Item”:

jenkins 怎么用

jenkins 怎么用

jenkins 怎么用

jenkins 怎么用

jenkins 怎么用

再增加一臺服務器 jin-11:

jenkins 怎么用

點擊“保存”。然后在主控制臺點擊“Build Now”:

jenkins 怎么用

此時就會自動開始構建,我們可以點擊控制臺查看輸出:

jenkins 怎么用

jenkins 怎么用

再在兩臺機器上查看是否成功:

jenkins 怎么用

jenkins 怎么用

可以看到,兩臺機器都執行成功。
如果 github 上的代碼進行了更新,只要在 jenkins 上再次點擊“立即構建”就可以發布更新。

4、配置郵件服務內置郵件的配置

依次點擊 系統管理 – 系統設置 – Jenkins Location 先設置系統管理員郵件地址,這里的郵件地址需要和后續要設置的發郵件地址一致。

jenkins 怎么用

然后往下拉,找到“E-mail Notification”那一欄 填寫 SMTP 服務器,此處我們以 qq 郵箱為例,SMTP 服務器為 smtp.qq.com,然后點右側的高級,打勾“Use SMTP Authentication”,填寫用戶名密碼,密碼為授權碼。如果使用的是 ssl 協議,還需要在這里打勾,smtp 端口默認為 25 可以打勾“通過發送測試郵件測試配置”,然后填寫接收郵件的地址,點右側的 Test configuration:

jenkins 怎么用

可以看到,郵件是可以成功發送的。

保存設置后,回到剛才的 test 項目下,增加一個構建后操作:

jenkins 怎么用

保存后,測試下:
首先刪除上一次構建生成的文件,然后給 test_jenkins 目錄加上特殊權限,使這個目錄不能添加文件。

[root@jin-10 /tmp]# rm -rf test_jenkins/*
[root@jin-10 /tmp]# chattr +i test_jenkins/

再點擊構建,查看控制臺:

jenkins 怎么用

可以看到,構建失敗,同時,郵件也已發出。
查看是否已收到郵件:

jenkins 怎么用

郵件插件 –Email Extension Plugin

由于內置的郵件功能一般,滿足不了大部分的需求,所以一般我們都使用郵件插件 Email Extension Plugin 來發送郵件。
我們把內置的郵件通知關掉,再點擊 系統管理 - 系統設置 - Extended E-mail Notification,配置如下:

jenkins 怎么用

jenkins 怎么用

再打開 test 項目,把原來的 E -mail Notification 刪除,增加構建后操作 Editable Email Notification:

jenkins 怎么用

點擊保存后,再選擇立即構建,查看控制臺輸出:

jenkins 怎么用

jenkins 怎么用

jenkins 怎么用

可以看到,無論構建成功與否,都會發送郵件。

5、部署 JAVA 項目 5.1 配置 maven

JAVA 項目是需要編譯和打包的,而編譯和打包用的都是 maven,需要我們安裝 maven 插件。
在安裝 maven 插件之前,需要在主機上(jin-10)下載 maven 安裝包并解壓:
maven 的下載地址:https://maven.apache.org/download

[root@jin-10 /usr/local/src]# wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar.gz
--2019-09-12 13:27:03-- http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar.gz
正在解析主機  mirror.bit.edu.cn (mirror.bit.edu.cn)... 114.247.56.117, 2001:da8:204:1::22
正在連接  mirror.bit.edu.cn (mirror.bit.edu.cn)|114.247.56.117|:80...  已連接。已發出  HTTP  請求,正在等待回應... 200 OK
長度:9142315 (8.7M) [application/octet-stream]
正在保存至: “apache-maven-3.6.2-bin.tar.gz”100%[==============================================] 9,142,315 344KB/s  用時  28s 
2019-09-12 13:27:31 (321 KB/s) -  已保存  “apache-maven-3.6.2-bin.tar.gz” [9142315/9142315])
[root@jin-10 /usr/local/src]# tar zxvf apache-maven-3.6.2-bin.tar.gz

把解壓的目錄移動到 /usr/local/ 下:

[root@jin-10 /usr/local/src]# mv apache-maven-3.6.2 /usr/local/

查看 maven 的相關信息:

[root@jin-10 /usr/local]# ./apache-maven-3.6.2/bin/mvn --version
Apache Maven 3.6.2 (40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-27T23:06:16+08:00)
Maven home: /usr/local/apache-maven-3.6.2
Java version: 1.8.0_222, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el7_6.x86_64/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name:  linux , version:  3.10.0-957.27.2.el7.x86_64 , arch:  amd64 , family:  unix

依次選擇 系統管理 – 全局工具配置 – 新增 Maven:

jenkins 怎么用

5.2 安裝相關的插件

系統管理 – 管理插件,查看 Maven Integration 和 Deploy to container 兩個插件是否已安裝,如沒有則安裝。

安裝完成后需重啟 jenkins

systemctl restart jenkins

5.3 創建私有倉庫

打開 gitlab,并創建一個名為 test_java 的項目和空倉庫:

jenkins 怎么用

jenkins 怎么用

先給 git 作一個全局配置, 設定用戶和郵箱 :

[root@jin-10 ~]# git config --global user.name  zjin 
[root@jin-10 ~]# git config --global user.email  zjin@git.com

克隆遠程倉庫到本地, 然后寫入一個文件 README.md 并推送到遠程倉庫:

[root@jin-10 ~]# git clone git@192.168.154.10:root/test_java.git
正克隆到   test_java ...
The authenticity of host  192.168.154.10 (192.168.154.10)  can t be established.
ECDSA key fingerprint is SHA256:WiJY7DRJy/UJcTtP5LjqnfYrqe9NTP+Rc8Fajy6dzBc.
ECDSA key fingerprint is MD5:c3:18:f8:05:ec:89:3f:1b:27:89:61:2b:ec:a7:1e:47.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added  192.168.154.10  (ECDSA) to the list of known hosts.
warning:  您似乎克隆了一個空版本庫。[root@jin-10 ~]# cd test_java/
[root@jin-10 ~/test_java]# echo  Hello world!    README.md
[root@jin-10 ~/test_java]# git add README.md 
[root@jin-10 ~/test_java]# git commit -m  add README.md 
[master(根提交) f8d8431] add README.md
 1 file changed, 1 insertion(+)
 create mode 100644 README.md
[root@jin-10 ~/test_java]# git push -u origin master
Counting objects: 3, done.
Writing objects: 100% (3/3), 221 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To git@192.168.154.10:root/test_java.git
 * [new branch] master -  master
分支  master  設置為跟蹤來自  origin  的遠程分支  master。[root@jin-10 ~/test_java]# echo  test_java project    README.md 
[root@jin-10 ~/test_java]# git add README.md 
[root@jin-10 ~/test_java]# git commit -m  change README.md 
[master 9b9f0bc] change README.md
 1 file changed, 1 insertion(+)
[root@jin-10 ~/test_java]# git push
warning: push.default  未設置,它的默認值將會在  Git 2.0  由   matching 
修改為   simple。若要不再顯示本信息并在其默認值改變后維持當前使用習慣,進行如下設置: git config --global push.default matching
若要不再顯示本信息并從現在開始采用新的使用習慣,設置: git config --global push.default simple
參見   git help config   并查找   push.default   以獲取更多信息。(simple   模式由  Git 1.7.11  版本引入。如果您有時要使用老版本的  Git,為保持兼容,請用   current   代替   simple   模式)Counting objects: 5, done.
Writing objects: 100% (3/3), 274 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To git@192.168.154.10:root/test_java.git
 f8d8431..9b9f0bc master -  master

查看遠程倉庫是否有這個文件:

jenkins 怎么用

5.4 下載 zrlog 源碼

下載地址:https://codeload.github.com/94fzb/zrlog/zip/master

下載后解壓:

[root@jin-10 ~]# unzip zrlog-master.zip

解壓后移動到 test_java 目錄下, 然后推送到遠程倉庫:

[root@jin-10 ~]# mv zrlog-master/* test_java/
mv:是否覆蓋 test_java/README.md? y
[root@jin-10 ~]# cd !$
cd test_java/
[root@jin-10 ~/test_java]# ls
bin data LICENSE mvnw.cmd README.en-us.md service
common doc mvnw pom.xml README.md web
[root@jin-10 ~/test_java]# git add .
[root@jin-10 ~/test_java]# git commit -m  add zrlog 
[root@jin-10 ~/test_java]# git push

查看是否推送成功到遠程倉庫:

jenkins 怎么用

5.5 安裝并配置 tomcat

下載并解壓:

[root@jin-10 /usr/local/src]# tar zxvf apache-tomcat-8.5.35.tar.gz 
[root@jin-10 /usr/local/src]# mv apache-tomcat-8.5.35 /usr/local/tomcat
[root@jin-10 /usr/local/src]# cd !$
cd /usr/local/tomcat
[root@jin-10 /usr/local/tomcat]# ls
bin conf lib logs README.md RUNNING.txt webapps
BUILDING.txt CONTRIBUTING.md LICENSE NOTICE RELEASE-NOTES temp work

修改文件 vim /usr/local/tomcat/conf/tomcat-users.xml, 加入如下內容:

role rolename= admin / 
 role rolename= admin-gui / 
 role rolename= admin-script / 
 role rolename= manager / 
 role rolename= manager-gui / 
 role rolename= manager-script / 
 role rolename= manager-jmx / 
 role rolename= manager-status / 
 user name= admin  password= 123456  roles= admin,manager,admin-gui,admin-script,manager-gui,
manager-script,manager-jmx,manager-status  /

啟動 tomcat 后會發現 8080 端口被占用, 我們修改下端口, 更改為 8081:

jenkins 怎么用

再修改配置文件 vim /usr/local/tomcat/webapps/manager/META-INF/context.xml, 增加如下圖的 IP 段:

jenkins 怎么用

再重新啟動 tomcat:

[root@jin-10 ~]# /usr/local/tomcat/bin/shutdown.sh 
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@jin-10 ~]# /usr/local/tomcat/bin/startup.sh 
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@jin-10 ~]# netstat -lntp |grep 8081
tcp6 0 0 :::8081 :::* LISTEN 53513/java

在瀏覽器中打開, 并點擊如圖所示位置, 此時會提示我們輸入用戶名和密碼進行認證:

jenkins 怎么用

jenkins 怎么用

點擊確定后, 就會進入 Tomcat Web Application Manager 管理界面:

jenkins 怎么用

5.6 構建 job

返回 jenkins 的主界面, 點擊新建, 名稱自定義, 選擇構建一個 maven 項目”, 點擊確定。

jenkins 怎么用

源碼管理,選擇要構建的 gitlab 地址:

jenkins 怎么用

此時會報錯,需要配置相對應的 key,點擊“Add”那里,然后選擇“jenkins”,類型選擇“SSH Username with private key”,username 填寫 git,再粘貼 jin-10 主機的私鑰:

jenkins 怎么用

jenkins 怎么用

build 欄填寫如下:

jenkins 怎么用

“構建后操作”,選擇“增加構建后操作”里的 Editable Email Notification,如圖所示:

jenkins 怎么用

5.7 發布 war 包

構建后操作
點擊“增加構建后操作步驟”選擇“Deploy war/ear to a container”,“WAR/EAR files”填寫“**/*.war”,Contex path 留空,Containers 選擇 Tomcat 8.x,Tomcat URL 填寫要把 war 包發布到的那臺機器的 url,如 http://192.168.154.10:8080 Credentials 這里需要點擊右側的 Add,添加用戶名和密碼

jenkins 怎么用

繼續點擊“增加構建后操作步驟”選擇“Editable Email Notification”Project Recipient List,改為 $DEFAULT_RECIPIENTS,493734218@ qq.com,意思是增加額外一個收件人。

jenkins 怎么用

點擊右下角的“Advanced settings”,定位到“Triggers”,然后點擊下方的“Add Trigger”,可以增加發郵件的條件。
最后點左下角的“保存”。
之后就可以點左側的“立即構建”,然后可以查看對應任務的“控制臺輸出”。

以上是“jenkins 怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注丸趣 TV 行業資訊頻道!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-16發表,共計10195字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 垣曲县| 长垣县| 应城市| 宁津县| 城步| 福贡县| 修武县| 晋州市| 宁海县| 雅江县| 通山县| 延长县| 平潭县| 东乡| 栖霞市| 花莲县| 渭南市| 钟祥市| 特克斯县| 清河县| 滁州市| 华安县| 孟津县| 柳林县| 波密县| 金华市| 河北省| 津市市| 新疆| 汨罗市| 裕民县| 镇雄县| 五华县| 贞丰县| 德安县| 绥德县| 齐齐哈尔市| 甘南县| 醴陵市| 宁波市| 岳阳县|