最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

linux之Jenkins自動(dòng)化項(xiàng)目部署流程

 更新時(shí)間:2026年03月06日 08:50:57   作者:yutao99  
本文介紹了持續(xù)集成和持續(xù)交付(CI/CD)的基本概念,并詳細(xì)描述了如何在CentOS?7環(huán)境下使用Jenkins、Maven、Git和Tomcat實(shí)現(xiàn)自動(dòng)化構(gòu)建和部署

CI/CD

CI (continuous integration-CI) -- 持續(xù)集成

  • 代碼合并,構(gòu)建,部署,測(cè)試都在一起,不斷的執(zhí)行的過程,并對(duì)結(jié)構(gòu)反饋。

  • CD(continuous Deloyments)-- 持續(xù)交付

    • 把代碼部署到測(cè)試環(huán)境,預(yù)生產(chǎn)環(huán)境。

  • CD(continous Delivery)-- 持續(xù)部署

    • 將最終的產(chǎn)品發(fā)布到生產(chǎn)環(huán)境,給用戶使用。

  • 實(shí)現(xiàn)持續(xù)集成/持續(xù)發(fā)布的產(chǎn)品

    • 開發(fā)(git) -->git遠(yuǎn)程倉庫-->jenkins(git+jdk+tomcat+maven打包+測(cè)試)-->發(fā)布到tomcat服務(wù)器

  • jenkins

    • Jenkins是幫我們將代碼進(jìn)行統(tǒng)一的編譯打包、還可以放到tomcat容器中進(jìn)行發(fā)布。 意思是我們通過配置,將以前:編譯、打包、上傳、部署到Tomcat中的過程交由Jenkins,Jenkins通過給定的代碼地址URL,將代碼拉取到其“宿主服務(wù)器”(Jenkins的安裝位置),進(jìn)行編譯、打包和發(fā)布到web容器中。

Jenkins

Jenkins概述

是一個(gè)開源的、提供友好操作界面的持續(xù)集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持續(xù)、自動(dòng)的構(gòu)建/測(cè)試軟件項(xiàng)目、監(jiān)控一些定時(shí)執(zhí)行的任務(wù)。

Jenkins用Java語言編寫,可在Tomcat等流行的servlet容器中運(yùn)行,也可獨(dú)立運(yùn)行。 jenkins通常與版本管理工具(SCM)、構(gòu)建工具結(jié)合使用;常用的版本控制工具有SVN、GIT。

jenkins構(gòu)建工具有Maven、Ant、Gradle。

Jenkins目標(biāo)

是監(jiān)控軟件開發(fā)流程 快速顯示問題 提高開發(fā)效率 過程控制

Jenkins特性

  • 易于安裝

不需要安裝、不需要數(shù)據(jù)庫,只需通過java -jar jenkins.war或部署到一個(gè)servlet容器中

  • 易于配置

所有的配置都可能通過jenkins提供的web界面完成,當(dāng)然如果你喜歡,也可以通過手動(dòng)修改xml文件進(jìn)行配置

  • 測(cè)試報(bào)告

生成JUnit或TestNG的測(cè)試報(bào)告.集成RSS/E-mail通過RSS發(fā)布構(gòu)建結(jié)果或當(dāng)構(gòu)建完成時(shí)通過e-mail通知。

  • 文件識(shí)別

jenkins能跟蹤每次構(gòu)建生成哪些jar包以及使用哪個(gè)版本的jar包

  • 分布式構(gòu)建

支持Jenkins能夠讓多臺(tái)計(jì)算機(jī)一起構(gòu)建/測(cè)試。

  • 插件支持

jenkins可以通過第三方插件擴(kuò)展,也可以根據(jù)團(tuán)隊(duì)需要開發(fā)插件

  • 任務(wù)(Job)和構(gòu)建(build)

任務(wù):(Job)是Jenkins的一個(gè)執(zhí)行計(jì)劃,是一系列操作的集合。 構(gòu)建:是Jenkins的任務(wù)的一次運(yùn)行。

  • 工作流程圖

  • 開發(fā)者檢入代碼到源代碼倉庫。
  • CI系統(tǒng)會(huì)為每一個(gè)項(xiàng)目創(chuàng)建了一個(gè)單獨(dú)的工作區(qū)。當(dāng)預(yù)設(shè)或請(qǐng)求一次新的構(gòu)建時(shí),它將把源代碼倉庫的源碼存放到對(duì)應(yīng)的工作區(qū)。
  • CI系統(tǒng)會(huì)在對(duì)應(yīng)的工作區(qū)內(nèi)執(zhí)行構(gòu)建過程。
  • (配置如果存在)構(gòu)建完成后,CI系統(tǒng)會(huì)在一個(gè)新的構(gòu)件中執(zhí)行定義的一套測(cè)試。完成后觸發(fā)通知(Email,RSS等等)給相關(guān)的當(dāng)事人。
  • (配置如果存在)如果構(gòu)建成功,這個(gè)構(gòu)件會(huì)被打包并轉(zhuǎn)移到一個(gè)部署目標(biāo)(如應(yīng)用服務(wù)器)或存儲(chǔ)為軟件倉庫中的一個(gè)新版本。軟件倉庫可以是CI系統(tǒng)的一部分,也可以是一個(gè)外部的倉庫,諸如一個(gè)文件服務(wù)器或者像Java.net、 SourceForge之類的網(wǎng)站。
  • CI系統(tǒng)通常會(huì)根據(jù)請(qǐng)求發(fā)起相應(yīng)的操作,諸如即時(shí)構(gòu)建、生成報(bào)告,或者檢索一些構(gòu)建好的構(gòu)件。 Jenkins就是這么一個(gè)CI系統(tǒng)。之前叫做Hudson。

Jenkins實(shí)戰(zhàn)案例

環(huán)境

  • centos7
  • github,gitee,gitlab
  • 192.168.183.101 部署jenkins(4\6\8G)
  • 192.168.183.100充當(dāng)tomcat網(wǎng)站服務(wù)器
  • 關(guān)閉防火墻\關(guān)閉selinux\配置了yum源(base,epel 阿里源)

1、安裝相關(guān)工具

1,mave安裝

要在java環(huán)境下才能用,下面有安裝jdk

1,官網(wǎng)https://maven.apache.org/

2,下載 maven3.8.8 包

https://dlcdn.apache.org/mave選擇自己需要的maven版本

[root@yt ~]# wget https://dlcdn.apache.org/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz

也可以下載好直接上傳到linux中

3,解壓后不用安裝,直接放到/usr/local/下

[root@yt ~]# tar -zxvf apache-maven-3.8.8-bin.tar.gz  -C /usr/local/
[root@yt ~]# mv /usr/local/apache-maven-3.8.8/ /usr/local/maven

 4,配置環(huán)境變量

[root@yt ~]# vim /etc/profile.d/jenkins_tools.sh

export M2_HOME=/usr/local/maven 
export M2=$M2_HOME/bin 
PATH=$M2:$PATH:$HOME/bin:/usr/local/git/bin 
export MAVEN_HOME=/usr/local/maven 
export PATH=${MAVEN_HOME}/bin:$PATH 

5,刷新環(huán)境變量

[root@test8 ~]# source /etc/profile.d/jenkins_tools.sh

2,部署git

  • 1.安裝依賴包
[root@test8 ~]# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker fontconfig -y
  • 2.git官網(wǎng)下載最新版本GIT
[root@test8 ~]# wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz

也可以下載好上傳到linux中

  • 3.安裝git
源碼安裝
[root@test8 ~]# tar xf git-2.9.5.tar.gz
[root@test8 ~]# cd git-2.9.5/

編譯源碼包,安裝在/usr/local/git目錄下
[root@test8 git-2.9.5]# make prefix=/usr/local/git all
時(shí)間會(huì)有些久!!

安裝包
[root@test8 git-2.9.5]# make prefix=/usr/local/git install
  • 4,修改環(huán)境變量 -- 更新git的路徑,從用戶主目錄下的 bin 目錄 修改到 /usr/local下面
編輯/etc/bashrc文件
[root@test8 git-2.9.5]#  vi /etc/bashrc 

最下面添加:
PATH=$PATH:$HOME/bin:/usr/local/git/bin

  • 關(guān)于bashrc和profile

/etc/profile:此文件為系統(tǒng)的每個(gè)用戶設(shè)置環(huán)境信息,當(dāng)用戶第一次?。?!登錄!??!時(shí),該文件被執(zhí)行. 并從/etc/profile.d目錄的配置文件中搜集shell的設(shè)置.

/etc/bashrc:為每一個(gè)運(yùn)行bash shell的用戶執(zhí)行此文件.當(dāng)bash shell被打開時(shí),該文件被讀取.

  • 5,刷新環(huán)境變量
[root@test8 git-2.9.5]#  source /etc/bashrc
  • 6,測(cè)試是否安裝成功:
[root@test8 git-2.9.5]#  git --version
git version 1.8.3.1
  • 7,如果你查詢的是低版本,有可能是系統(tǒng)YUM安裝的.yum卸載之后即可.
[root@test8 git-2.9.5]#  yum remove git.x86_64
[root@test8 git-2.9.5]#  source /etc/bashrc
[root@test8 git-2.9.5]#  git --version
git version 2.9.5

3、安裝Jenkins

搭建jdk環(huán)境和Tomcat服務(wù)

1、上傳 jdk-11.0.16_linux-x64_bin.tar.gz apache-tomcat-9.0.79.tar.gz

2、解壓jdk

[root@test8 ~]# tar xf jdk-11.0.16_linux-x64_bin.tar.gz

3、解壓tomcat

[root@test8 ~]# tar xf apache-tomcat-9.0.79.tar.gz

4、拷貝并修改名稱

  • 將解壓后的jdk和Tomcat移動(dòng)到/usr/local/下
    [root@test8 ~]# mv jdk-11.0.16 /usr/local/java && mv apache-tomcat-9.0.79 /usr/local/tomcat

5、處理環(huán)境變量

[root@test8 ~]# vi /etc/profile.d/java.sh
?
編輯一下內(nèi)容:
TOMCAT_HOME=/usr/local/tomcat
JAVA_HOME=/usr/local/java
PATH=$TOMCAT_HOME/bin:$JAVA_HOME/bin:$PATH
export TOMCAT_HOME JAVA_HOME PATH

6、刷新環(huán)境變量

[root@test8 ~]# source /etc/profile.d/java.sh
?
[root@test8 ~]# java -version
java version "11.0.16" 2022-07-19 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.16+11-LTS-199)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.16+11-LTS-199, mixed mode)
?
這里驗(yàn)證maven也是安裝好的
[root@web ~]# mvn --version
Apache Maven 3.8.8 (4c87b05d9aedce574290d1acc98575ed5eb6cd39)
Maven home: /usr/local/maven
Java version: 11.0.16, vendor: Oracle Corporation, runtime: /usr/local/java
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-957.el7.x86_64", arch: "amd64", family: "unix"

4、安裝jenkins

1,官網(wǎng)下載jenkins: jenkins.war

下載2.422

2,上傳至服務(wù)器

3,清空Tomcat下webapp中的所有文件,防止Tomcat中的文件造成干擾

[root@test8 ~]# rm -rf /usr/local/tomcat/webapps/*

4,將Jenkins.war包放到Tomcat/webapp下

[root@test8 ~]# cp jenkins.war /usr/local/tomcat/webapps/

5、啟動(dòng)tomcat,并頁面訪問

[root@test8 ~]# /usr/local/tomcat/bin/startup.sh

訪問 http://192.168.183.100:8080/jenkins

可能出現(xiàn)的錯(cuò)誤

缺少字體

[root@yt ~]# yum install fontconfig 
安裝并重啟tomcat
[root@yt ~]# /usr/local/tomcat/bin/startup.sh

如果還有其他錯(cuò)誤,請(qǐng)查詢tomcat的錯(cuò)誤日志.

2、前臺(tái)配置jenkins

1,解鎖Jenkins

2,添入以下文件密碼到上圖頁面中

[root@yt ~]# cat /root/.jenkins/secrets/initialAdminPassword
44bae7336de74fafaa8fa78bdb0311c6

點(diǎn)擊繼續(xù)

3,選擇suggested的插件進(jìn)行下載

4,等待安裝完成。

因?yàn)榫W(wǎng)速原因,插件可能下載失敗,沒關(guān)系,把他們記錄下來,比如下圖的兩個(gè)插件,點(diǎn)擊繼續(xù),進(jìn)去之后手動(dòng)重新安裝未安裝好的插件,也可以重試,繼續(xù)下載安裝。

如果大量組件,重試多次依然未安裝成功.請(qǐng)嘗試如下方法解決jenkins 插件安裝緩慢問題

[root@yt ~]# vim ~/.jenkins/hudson.model.UpdateCenter.xml
?
 <url>http://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>
?
?
?
[root@yt ~]# vim ~/.jenkins/updates/default.json
    替換命令
% s/www.google.com/www.baidu.com/g
% s/updates.jenkins.io\/download/mirrors.tuna.tsinghua.edu.cn\/jenkins/g
    
舊版: http://updates.jenkins-ci.org/download 替換成 https://mirrors.tuna.tsinghua.edu.cn/jenkins 
新版:https://updates.jenkins.io/download 替換成 https://mirrors.tuna.tsinghua.edu.cn/jenkins 
    
修改完以后,重啟Jenkins服務(wù)再輸入密碼,繼續(xù)安裝,速度賊快。
    http://192.168.183.100:8080/jenkins/restart
    重啟tomcat

5,創(chuàng)建用戶

6,jenkins的分享地址 http://192.168.183.100:8080/jenkins/

7,前臺(tái)安裝完成

如果這個(gè)頁面過一會(huì)消失了。并且常時(shí)間空白??赡苄枰愕卿浟?。換個(gè)瀏覽器,打開相同的地址就會(huì)出現(xiàn)認(rèn)證頁面。

8,登錄成功進(jìn)入歡迎界面

3、系統(tǒng)配置

系統(tǒng)配置

系統(tǒng)消息:Welcome to Jenkins~

Manage Jenkins

提示信息

初始頁面提示

centos7支持截止日期

  • 操作系統(tǒng)壽命終止監(jiān)視器 您正在CentOS Linux 7(Core)上運(yùn)行Jenkins。Jenkins將在2023-11-16年后不再支持CentOS Linux 7(Core)。 請(qǐng)計(jì)劃在2023-11-16年之前升級(jí)到受支持的操作系統(tǒng)。 有關(guān)詳細(xì)信息,請(qǐng)參閱文檔。
  • 如果你希望繼續(xù)使用centos7上jenkins請(qǐng)保留這個(gè)版本

單節(jié)點(diǎn)提示

  • 在內(nèi)置節(jié)點(diǎn)上構(gòu)建可能是一個(gè)安全問題。您應(yīng)該設(shè)置分布式構(gòu)建。請(qǐng)參閱文檔。
  • 全局變量設(shè)置

  • 全局工具配置

  • maven配置
/usr/local/maven/conf/settings.xml

  • 添加JDK工具

點(diǎn)擊新增---> 取消自動(dòng)安裝 ---->然后查詢Jenkins服務(wù)器上JDK的路徑,填寫JAVA_HOME ---> 保存即可

添加git工具

/usr/local/git/bin/git

添加maven工具

/usr/local/maven

SSH 設(shè)置:

注意這一步等插件管理進(jìn)行完之后再進(jìn)行下面的操作

簡(jiǎn)介

  • (192.168.183.100)jinkens服務(wù)器上的maven將開發(fā)產(chǎn)生的*.war包。 通過SSH自動(dòng)推送到遠(yuǎn)程tomcat 服務(wù)器上(192.168.183.101)。 需要手工配置ssh key。配合自動(dòng)化推送
  • 192.168.183.100是jenkins
  • 192.168.183.101是tomcat網(wǎng)站服務(wù)器,代表業(yè)務(wù)服務(wù)器

1.jenkins服務(wù)器準(zhǔn)備秘鑰認(rèn)證

[root@yt ~]# ssh-keygen 


一路回車

2.將秘鑰拷貝給目標(biāo)服務(wù)器

[root@yt ~]# ssh-copy-id -i 192.168.183.101

3.注意這里的192.168.183.101是一臺(tái)tomcat網(wǎng)站服務(wù)器。什么都不用安裝,接到代碼即可。

4.測(cè)試連接

[root@yt ~]# ssh 192.168.183.101 
登錄不需要密碼即可

切記測(cè)試遠(yuǎn)程登錄后退出?。?!

[root@yt ~]# exit  

5.在jenkins上配置ssh信息

1.查看SSH私鑰

[root@yt ~]# cat ~/.ssh/id_rsa

-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEA3sx3DSfnhnGTenwXSDvd37jUAAjz0q+g9xJWL+9noRusyNz2
3R413uLDh8JCCLeYJg9yIRp/8pGKBP2oU5XUtlRVUXGmOkywVr0bOzTHdXlyr/Wm
vPegep+bsiaMUtJkRY3fV+sXYAwkKu9rEKiuOoCRyiuNG3qAywj3Nm48A8vvQSe0
nf4ZhCAG0YB8Q1IIyLm+/0/Z0cQChNKQjdCfQJB37Wx2Oi0Y3ajta7Tt3iEWl6bF
0VZbBOr4BYpZAVeTUrMpTxw7HQAP7HOynG/RkVD9z9AyQgZQo2UginQpEYYJ+VwQ
2fDrUUQwvFg2Zy2jBZvRdQjjvqhM1c8fSGwYHwIDAQABAoIBAGtzYstGfoO5jO3a
oQPmU4hNRHlL2AO5TkE6Z7SwmmL5zOgGoUxdAJAg/zofNuerW8anVlyewixDgrQL
fb3qGe9hVtBzpj6hs73xcAuq1bNTQjuYlrS2HIBnL5jIvI5JB7D/zkJBkEFzOZI3
a4RaRcTTMvy06lXhS/IfvdJTccBGGPRpdXulzULlfBJIJoodmVzFvNT1TBhUtaE5
AVoxXwccUizzRX5ACq0URpUTGEFqREl5w7R6jtXHnSiat3UIq5ChS7sa6D24pMmi
HVe4CHhcjW+9Yfs8bgbZ/rSdPz1cQ33BGyZt9VRxyTPCF90gqh/EDOFBDEiDR+bp
ovvZfFkCgYEA9/PeeqzlwPqq5/6B7RDZ4rbm+X2RQpzb49al4/mXOoq/Lv1UWyRU
Qn1DTEvoxh7Rgp427r8O9a+wlB20TS7vkybJxIb7tOtosiWvXD1Xjxhzv+hEAaV0
m2ezgznVF5v7Aw+AQQGzJCk9M75dTT1W63LId4/NPPRGL4dAxQ6CvoMCgYEA5gea
WfuAKFK/ZJACi7ZT3geoXap72b8wyeM2elpCLfZFMbLC52Pp2uD+IQUnIDgBRELu
WjdQzgxafz9miDtXi7kWLDhKnUWppprJoGTVkSvnIgYTdA0G6cvliSRuV8xTKHYc
wygVxL1MtAknrfylwwfixoHDlKKWAzVzkX46DTUCgYEA6YfBie8f8ZLltt0pR7tw
S6ySfHb8gi20mLFIyx//hD67dCla8wCTb5AE+24fTcIm94vGFzTRhSq097vGXk+P
ixukOzobBboWgHsn34tS1U5lbmD29En+OoQAOd8VSUg6sRY/aHqOW8ePghWQULgu
DlGsZ5eD6R30oL0VjsNs9rsCgYBCd6XxJEwG2so1C6vApSGcwYez8QQyih1V6NKg
Dh6bW1LpJmdNJ0C2n1avQebpV2V+TPzEksFFmKo5pJ9C9Cq60/OFOYrN4QhBfO6P
6zMO7Kmv2iOa3/zEZ8delmlP81mAEokDFz0bCTv1tcOCccOQFGJBy9Mwyr4gFTzc
qKWrlQKBgBXLMBs+h5Ax8KIrjxlHIt8oPUYCOpi4ofdUBXUafzbEiYZPK3Y2UbDP
4OTI5sflEBsfRkzl1Nw+V6n89utUQyv8LgHJNvwo4A3DMn+s2FsCx/tIZrKtejo6
ZKTpqjm3bsBhThQCQnqKpqNhUgWL+AqN5Ug8KLGTB7TTSsGeJo1+
-----END RSA PRIVATE KEY-----

復(fù)制cat出來的所有內(nèi)容,粘貼到下一步頁面上的key中。

進(jìn)入jenkins系統(tǒng)設(shè)置

  • 粘貼到j(luò)enkins

4、插件管理

  • 插件管理

這里有可更新、可選未安裝插件、已安裝插件;可以通過過濾快速查找

  • 安裝插件

(1)Maven Integration plugin 安裝此插件才能構(gòu)建maven項(xiàng)目

(2)Deploy to container Plugin 安裝此插件,才能將打好的包部署到tomcat上

(3) 安裝git相關(guān)3個(gè)插件

安裝過程同第一個(gè)插件:

GIT plugin

GitHub Authentication

GitHub Branch Source

  • 默認(rèn)已安裝

GitHub Organization Folder

淘汰了。不用安裝這個(gè)插件了

(4)安裝插件:Publish Over SSH

回到上面配置ssh

  • 安裝過程同第一個(gè)插件:

優(yōu)化maven

配置國(guó)內(nèi)maven鏡像

[root@yt ~]# vim /usr/local/maven/conf/settings.xml 

注意每一行
<mirror>
    <id>central</id>
    <mirrorOf>central</mirrorOf>
    <name>aliyun maven</name>
    <url>https://maven.aliyun.com/repository/public</url>
</mirror>  

5、Jenkins+Maven+Github+Tomcat 自動(dòng)化構(gòu)建打包、部署

Jenkins+Maven+Github+Tomcat 自動(dòng)化構(gòu)建打包、部署

創(chuàng)建一個(gè)Maven工程

1.構(gòu)建maven項(xiàng)目

2.源碼管理 -- 選擇版本控制器和倉庫地址

互聯(lián)網(wǎng)倉庫1

https://gitee.com/newrain001/easy-springmvc-maven.git
https://gitee.com/chenfuguo1949/easy-springmvc-maven.git

互聯(lián)網(wǎng)倉庫2

https://github.com/bingyue/easy-springmvc-maven.git

如果有圖中的提示,請(qǐng)注意你的git工具在jenkins中是否配置正確

注意:如果是私有倉庫,這里需要建立credentials身份認(rèn)證

3.設(shè)置觸發(fā)器(保持默認(rèn))

4.設(shè)置構(gòu)建(編譯打包)

手動(dòng)添加Goals and options

clean package -Dmaven.test.skip=true

5.構(gòu)建后操作

在構(gòu)建后設(shè)置中 選擇:(send build artifacts over ssh)通過SSH發(fā)送構(gòu)建工件

點(diǎn)擊 --> 增加構(gòu)建后操作

說明

name

  • ssh server 因?yàn)橹暗呐渲脮?huì)默認(rèn)出現(xiàn)tomcat業(yè)務(wù)服務(wù)器的名字

source file

  • target/*.war

  • 構(gòu)建之后,在jenkins服務(wù)器上是可以自動(dòng)看到war包的。(該路徑不需要?jiǎng)?chuàng)建) # ls /root/.jenkins/jobs/testjob1/builds/target/*.war

Remove prefix

  • 自動(dòng)刪除路徑前綴(不需要?jiǎng)?chuàng)建路徑前綴)

Remote directory

  • tomcat業(yè)務(wù)服務(wù)器上的路徑,需要提前在192.168.183.101(tomcat)上創(chuàng)建該目錄。 用來存放網(wǎng)站源代碼。(需要后臺(tái)創(chuàng)建) # mkdir -p /jenkins/war,真正的部署項(xiàng)目應(yīng)該放到/usr/local/tomcat/webapp/下

Exec command

tomcat(192.168.229.21)在接收到源碼之后的自定義動(dòng)作。
比如:將源碼拷貝到網(wǎng)站的主目錄(/jenkins),并執(zhí)行一些其他操作如重啟服務(wù)器等(或創(chuàng)建文件touch)(需要后臺(tái)創(chuàng)建)
# mkdir  /jenkins/sh
# cat  /jenkins/sh/deploy.sh
cp -r /jenkins/war/*.war   /jenkins
touch /tmp/aaaaaa.txt
#chmod +x /jenkins/sh/deploy.sh

6.保存

執(zhí)行構(gòu)建

錯(cuò)誤1

github連接失敗

ERROR: Error cloning remote repo 'origin' SSH: Current build result is [FAILURE], not going to run. Finished: FAILURE


重試

6、構(gòu)建任務(wù)

構(gòu)建任務(wù)

  • 1.立即構(gòu)建
  • 2.查看構(gòu)建結(jié)果

結(jié)果路徑

輸出信息,最后是如下:

channel stopped
SSH: Connecting from host [web.chenfuguo.cn]
SSH: Connecting with configuration [tomcat] ...
SSH: EXEC: completed after 201 ms
SSH: Disconnecting configuration [tomcat] ...
SSH: Transferred 1 file(s)
Finished: SUCCESS

7、檢查錯(cuò)誤配置

檢查錯(cuò)誤配置

左側(cè):點(diǎn)擊“系統(tǒng)管理”

1.如果有“編碼問題”錯(cuò)誤,在Tomcat–>conf–>server.xml文件中修改即可

[root@localhost ~]# head -1 /usr/local/tomcat/conf/server.xml 

<?xml version="1.0" encoding="UTF-8"?>

2.如果有”反向代理設(shè)置有誤“錯(cuò)誤,請(qǐng)忽略

關(guān)于jenkins 設(shè)置中文語言(略)

關(guān)于重啟jenkins(略)

  • http://192.168.183.101:8080/jenkins/restart
  • http://192.168.183.101:8080
  • http://192.168.183.101:8080

排錯(cuò)問題示例

問題1:jenkins訪問一直處于等待狀態(tài)tomcat日志顯示如下信息:

[root@jenkins logs]# tail -f /usr/local/tomcat/logs/catalina.out  

 WARNING [Handling GET /jenkins/login from 10.0.0.174 :
 http-nio-8080-exec-3 HudsonIsLoading/index.jelly] org.apache.catalina.webresources.Cache.getResource Unable
 to add the resource at [/WEB-INF/classes/lib/layout/breadcrumbs.jelly]
 to the cache for web application [/jenkins] because there was
 insufficient free space available after evicting expired 
cache entries - consider increasing the maximum size of the cache

解決方案

只要在$CATALINA_BASE/conf/context.xml里增加資源最大可緩存的大小就行了,大小可按自己的需要定義  
   # vim /usr/local/tomcat/conf/context.xml 
   <Context>
 
   <!-- Default set of monitored resources. If one of these changes, the    -->
   <!-- web application will be reloaded.                                   -->
   <WatchedResource>WEB-INF/web.xml</WatchedResource>
   <WatchedResource>WEB-INF/tomcat-web.xml</WatchedResource>
   <WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
   <Resources
       cachingAllowed="true"
       cacheMaxSize="100000"
   />
</Context>
最后重起tomcat,問題解決!

問題2:剩余內(nèi)存必須大于2G

  • tomcat啟動(dòng)之前的內(nèi)存
  • tomcat啟動(dòng)之后的內(nèi)存

問題3:插件下載后繼續(xù)下面初始化完成點(diǎn)開始的時(shí)候跳到一個(gè)空白頁面

解決:點(diǎn)擊地址欄左邊的后退按鈕即可進(jìn)入正常頁面

接著上面的錯(cuò)誤,返回之后雖然進(jìn)入正常界面,但是會(huì)有如下提示:

手動(dòng)安裝這些插件

問題4:腳本權(quán)限

嘗試修改構(gòu)建后腳本的權(quán)限

問題5:構(gòu)建個(gè)人的github庫時(shí),缺失pom文件

可以用公共庫中拷貝,傳到自己的GitHub上。

8、構(gòu)建部署前端項(xiàng)目

1,安裝nginx

[root@yt ~]# yum install nginx -y
[root@yt ~]# systemctl start nginx

2,測(cè)試nginx安裝成功

出現(xiàn)nginx服務(wù)器的主頁

[root@yt ~]# systemctl restart nginx.service

2,安裝node.js

服務(wù)器上的node版本要和開發(fā)環(huán)境用的node版本同步,問前端要他的node.js的版本

查看node版本

node -v

1,下載node.js

node.js官網(wǎng)https://nodejs.org/zh-cn

1.把壓縮包傳到服務(wù)器,解壓就是安裝

2.解壓安裝

[root@yt ~]# tar -xvf node-v17.9.1-linux-x64.tar.xz -C /usr/local/

3.修改node的名字方便配置環(huán)境變量

[root@yt ~]# mv /usr/local/node-v17.9.1-linux-x64/ /usr/local/node

4.配置環(huán)境變量

[root@yt ~]# vim /etc/profile.d/node_tools.sh
?
export NODE_HOME=/usr/local/node/
export PATH=$NODE_HOME/bin:$PATH

5.刷新環(huán)境變量,測(cè)試node和npm是否安裝成功

[root@yt ~]# source /etc/profile.d/node_tools.sh
[root@yt ~]# node -v
v17.9.1
[root@yt ~]# npm -v
8.11.0l

3、構(gòu)建Jenkins任務(wù)

?https://github.com/cfg1573/my-vue-2402.git

配置目標(biāo)機(jī)器

[root@yt ~]# mkdir /root/web

[root@yt ~]# vim web.sh

# jenkins 拉取代碼存放地址
cd /root/web  # 為什么要切換目錄:因?yàn)閚pm install執(zhí)行安裝依賴要在項(xiàng)目目錄下才能找到需要的依賴是什么才可以執(zhí)行。
npm install
npm run build	# 將vue項(xiàng)目進(jìn)行打包成瀏覽器可以識(shí)別的html、css、js文件
rm -rf /usr/share/nginx/html/*
cp -r /root/web/dist/* /usr/share/nginx/html/
systemctl restart nginx.service

[root@yt ~]# chmod +x /root/web.sh

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • linux上TCP connection timeout問題解決辦法

    linux上TCP connection timeout問題解決辦法

    這篇文章主要介紹了 linux上TCP connection timeout問題解決辦法的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • 如何配置Apache服務(wù)器中的虛擬機(jī)

    如何配置Apache服務(wù)器中的虛擬機(jī)

    Apache 的虛擬主機(jī)就是在一臺(tái)服務(wù)器上運(yùn)行多個(gè)網(wǎng)站,每個(gè)虛擬主機(jī)都可以綁定獨(dú)立的域名,為這些域名可以指定單獨(dú)的目錄,訪問這些域名的時(shí)候,Apache 會(huì)打開對(duì)應(yīng)目錄里面的東西。本文給大家介紹Apache服務(wù)器虛擬機(jī)的配置方法,感興趣的朋友一起學(xué)習(xí)吧
    2016-04-04
  • Apache JMeter 5.5 下載安裝及設(shè)置中文圖文教程

    Apache JMeter 5.5 下載安裝及設(shè)置中文圖文教程

    這篇文章主要介紹了Apache JMeter 5.5 下載安裝以及設(shè)置中文教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-02-02
  • 關(guān)于linux下core dump【總結(jié)】

    關(guān)于linux下core dump【總結(jié)】

    下面小編就為大家?guī)硪黄P(guān)于linux下core dump【總結(jié)】。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-01-01
  • 入域的Windows訪問未入域的Samba服務(wù)方法介紹

    入域的Windows訪問未入域的Samba服務(wù)方法介紹

    這篇文章主要介紹了入域的Windows訪問未入域的Samba服務(wù)方法介紹,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • Linux之系統(tǒng)調(diào)用問題

    Linux之系統(tǒng)調(diào)用問題

    這篇文章主要介紹了Linux之系統(tǒng)調(diào)用問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 虛擬機(jī)Centos7環(huán)境下實(shí)現(xiàn)安裝wget方式

    虛擬機(jī)Centos7環(huán)境下實(shí)現(xiàn)安裝wget方式

    wget是一款支持HTTP/HTTPS/FTP的下載工具,可后臺(tái)運(yùn)行,若虛擬機(jī)Linux缺少wget,可通過刪除舊版本、下載并安裝rpm包解決,最后驗(yàn)證安裝是否成功
    2025-07-07
  • 常用的Linux測(cè)速腳本和命令匯總

    常用的Linux測(cè)速腳本和命令匯總

    在Linux服務(wù)器上,測(cè)速腳本和命令是評(píng)估網(wǎng)絡(luò)上傳、下載速度以及延遲的重要工具,廣泛用于服務(wù)器部署后的網(wǎng)絡(luò)性能測(cè)試,以下介紹一些常用的Linux測(cè)速腳本和命令,包括下載速度、延遲測(cè)試、以及綜合帶寬測(cè)速工具,需要的朋友可以參考下
    2025-12-12
  • 詳解寶塔Linux面板FTP無法連接的解決辦法

    詳解寶塔Linux面板FTP無法連接的解決辦法

    這篇文章主要介紹了詳解寶塔Linux面板FTP無法連接的解決辦法,文章中詳細(xì)的介紹了FTP無法連接的解決方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Centos7環(huán)境下YUM的搭建方法

    Centos7環(huán)境下YUM的搭建方法

    大家好,本篇文章主要講的是Centos7環(huán)境下YUM的搭建方法,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12

最新評(píng)論

社旗县| 凤台县| 台东县| 桂东县| 蒲江县| 河南省| 从化市| 滨州市| 壶关县| 洱源县| 济南市| 壶关县| 娱乐| 长阳| 莱芜市| 舞阳县| 泸州市| 共和县| 昭通市| 板桥市| 肥西县| 德钦县| 兴山县| 滦南县| 宁武县| 高青县| 肇东市| 桐柏县| 浠水县| 呈贡县| 柘荣县| 达州市| 花莲县| 策勒县| 漳浦县| 望都县| 介休市| 肃南| 光山县| 阿坝县| 黄龙县|