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

tomcat部署jenkins項目的實現(xiàn)示例

 更新時間:2023年11月29日 10:21:29   作者:運維工程師001號  
Jenkins自動化部署可以解決集成、測試、部署等重復性的工作,本文主要介紹了tomcat部署jenkins項目,具有一定的參考價值,感興趣的可以了解一下

jenkins簡介

? Jenkins自動化部署可以解決集成、測試、部署等重復性的工作,工具集成的效率明顯高于人工操作;并且持續(xù)集成可以更早的獲取代碼變更的信息,從而更早的進入測試階段,更早的發(fā)現(xiàn)問題,這樣解決問題的成本就會顯著下降:持續(xù)集成縮短了從開發(fā)、集成、測試、部署各個環(huán)節(jié)的時間,從而也就縮短了中間出現(xiàn)的等待時間;持續(xù)集成也意味著開發(fā)、集成、測試、部署得以持續(xù)。

Jenkins的主要特點和功能:

  • 自動化構(gòu)建:Jenkins可以從版本控制系統(tǒng)(如Git、SVN等)中獲取源代碼,并根據(jù)預定義的構(gòu)建腳本進行自動化構(gòu)建。它支持各種構(gòu)建工具和構(gòu)建環(huán)境,如Maven、Gradle、Ant等。
  • 持續(xù)集成:Jenkins可以在代碼提交到版本控制系統(tǒng)后自動觸發(fā)構(gòu)建過程,進行代碼編譯、單元測試、集成測試等,并生成構(gòu)建報告和測試報告。它可以與各種測試框架和工具集成,如JUnit、TestNG、Selenium等。
  • 持續(xù)交付和部署:Jenkins可以將構(gòu)建好的軟件包自動部署到目標環(huán)境中,如開發(fā)、測試、生產(chǎn)環(huán)境等。它支持各種部署方式和工具,如Shell腳本、Docker、Kubernetes等。
  • 可擴展性:Jenkins提供了豐富的插件和擴展機制,可以滿足不同團隊和項目的需求。開發(fā)人員可以編寫自定義插件,或者使用已有的插件來擴展Jenkins的功能。
  • 可視化界面:Jenkins提供了直觀的Web界面,可以方便地查看和管理構(gòu)建、測試和部署的狀態(tài)和結(jié)果。它還提供了豐富的報表和圖表,幫助團隊了解項目的健康狀況和性能指標。

環(huán)境準備:

部署jenkins前先部署tomcat,tomcat部署方法請參考:tomcat

jenkins部署

下載jenkins軟件包

下載地址:Jenkins download and deployment

[root@localhost ~]# wget https://get.jenkins.io/war-stable/2.414.2/jenkins.war
...
Length: 89532729 (85M) [application/java-archive]
Saving to: ‘jenkins.war'
jenkins.war                       100%[===========================================================>]  85.38M   299KB/s    in 3m 15s  
2023-10-11 14:07:07 (448 KB/s) - ‘jenkins.war' saved [89532729/89532729]
[root@localhost ~]# 
[root@localhost ~]# ls
anaconda-ks.cfg  apache-tomcat-9.0.65.tar.gz  jenkins.war
[root@localhost ~]# 

將jenkins.war文件拷貝至webapps目錄下

[root@localhost ~]# cd /usr/local/tomcat/webapps/
[root@localhost webapps]# 
[root@localhost webapps]# ls
docs  examples  host-manager  manager  ROOT
[root@localhost webapps]# 
[root@localhost webapps]# cp /root/jenkins.war .
[root@localhost webapps]# ls
docs  examples  host-manager  jenkins.war  manager  ROOT
[root@localhost webapps]# 

編輯server.xml配置文件

開啟AJP協(xié)議,用于tomcat跟apache的效率,注意如果有多個tomcat,則改一下端口號,比如8009變8010

[root@localhost ~]# cd /usr/local/tomcat/conf/
[root@localhost conf]# ls
Catalina         catalina.properties  jaspic-providers.xml  logging.properties  tomcat-users.xml  web.xml
catalina.policy  context.xml          jaspic-providers.xsd  server.xml          tomcat-users.xsd
[root@localhost conf]# 
[root@localhost conf]# vim server.xml 
...
    <!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector protocol="AJP/1.3"
               address="::1"
               port="8009"
               redirectPort="8443" />
...
"server.xml" 168L, 7563C written                                                                          
[root@localhost conf]#

重啟服務,jenkins.war包會自動解壓縮

[root@localhost webapps]# cd ..
[root@localhost tomcat]# ./bin/catalina.sh stop
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
Using CATALINA_OPTS:   
NOTE: Picked up JDK_JAVA_OPTIONS:  --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
[root@localhost tomcat]# 
[root@localhost tomcat]# 
[root@localhost tomcat]# ./bin/catalina.sh start
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
Using CATALINA_OPTS:   
Tomcat started.
[root@localhost tomcat]# 
[root@localhost tomcat]# ss -anlt
State          Recv-Q         Send-Q                      Local Address:Port                 Peer Address:Port        Process         
LISTEN         0              128                               0.0.0.0:22                        0.0.0.0:*                           
LISTEN         0              1                      [::ffff:127.0.0.1]:8005                            *:*                           
LISTEN         0              100                                 [::1]:8009                         [::]:*                           
LISTEN         0              100                                     *:8080                            *:*                           
LISTEN         0              128                                  [::]:22                           [::]:*                           
[root@localhost tomcat]#
[root@localhost tomcat]# cd webapps/
[root@localhost webapps]# ls
docs      host-manager     jenkins.war    ROOT    examples  jenkins      manager
[root@localhost webapps]#  

訪問網(wǎng)頁解鎖 Jenkins

[root@localhost webapps]# cat /root/.jenkins/secrets/initialAdminPassword
d4871675ae814d8ea501b87f853b94f6
[root@localhost webapps]#

image-20231011144848802

選擇安裝推薦的插件

image-20231011145208200

等待安裝完成

image-20231011145808906

創(chuàng)建管理員用戶

用戶名,密碼和郵箱自定義

登錄成功

image-20231011150855659

使用jenkins部署項目

安裝拉取項目和打包項目的工具

[root@localhost ~]# yum -y install git maven

手動拉取項目測試

[root@localhost ~]# git clone https://gitee.com/forgotten/tomcat-java-demo.git
Cloning into 'tomcat-java-demo'...
remote: Enumerating objects: 558, done.
remote: Total 558 (delta 0), reused 0 (delta 0), pack-reused 558
Receiving objects: 100% (558/558), 5.08 MiB | 536.00 KiB/s, done.
Resolving deltas: 100% (217/217), done.
[root@localhost ~]# ls
anaconda-ks.cfg  apache-tomcat-9.0.65.tar.gz  jenkins.war  tomcat-java-demo
[root@localhost ~]# 

將java版本更換為17

[root@localhost ~]# alternatives --config java

There are 2 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
   1           java-17-openjdk.x86_64 (/usr/lib/jvm/java-17-openjdk-17.0.1.0.12-2.el8_5.x86_64/bin/java)
*+ 2           java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64/jre/bin/java)

Enter to keep the current selection[+], or type selection number: 1
[root@localhost ~]# 

手動打包測試

[root@localhost tomcat-java-demo]# mvn clean package
...
[INFO] Packaging webapp
[INFO] Assembling webapp [ly-simple-tomcat] in [/root/tomcat-java-demo/target/ly-simple-tomcat-0.0.1-SNAPSHOT]
...
[root@localhost tomcat-java-demo]# 
[root@localhost tomcat-java-demo]# cd target/
[root@localhost target]# ls
classes  generated-sources  ly-simple-tomcat-0.0.1-SNAPSHOT  ly-simple-tomcat-0.0.1-SNAPSHOT.war  maven-archiver  maven-status
[root@localhost target]# 

創(chuàng)建一個流水線任務

編寫一個hello world 流水線腳本

點擊test,然后點擊立即構(gòu)建

構(gòu)建成功

image-20231011162214404

生成拉取腳本,編寫流水線腳本

倉庫URL下面填寫你要拉取的項目地址

生成拉取腳本后,編寫流水線腳本

點擊立即構(gòu)建

拉取成功

image-20231011164348598

查看流水線腳本拉取的項目

[root@localhost ~]# ls -a       
.   anaconda-ks.cfg              .bash_history  .bash_profile  .cshrc   .java     jenkins.war  .tcshrc   .wget-hsts
..  apache-tomcat-9.0.65.tar.gz  .bash_logout   .bashrc        .groovy  .jenkins  .m2          .viminfo
[root@localhost ~]# 
[root@localhost ~]# cd .jenkins/
[root@localhost .jenkins]# 
[root@localhost .jenkins]# ls
...
jenkins.install.UpgradeWizard.state             plugins                                                    users
jenkins.model.JenkinsLocationConfiguration.xml  queue.xml                                                  workspace
jenkins.telemetry.Correlator.xml                queue.xml.bak
[root@localhost .jenkins]# 
[root@localhost .jenkins]# cd workspace/test/
[root@localhost test]# ls
db  deploy.yaml  Dockerfile  jenkinsfile  LICENSE  pom.xml  README.md  src
[root@localhost test]# 

安裝maven打包插件

選擇需要安裝的插件

點擊安裝

安裝完成

image-20231011165658072

手動打包成功后編寫流水線腳本

流水線腳本代碼

pipeline {
    agent any
    stages {
        stage('pull code and package') {
            steps {
                git 'https://gitee.com/forgotten/tomcat-java-demo'
                sh 'mvn clean package -Dmaven.test.skip=true'
            }
        }
        stage("deploy"){
            steps {
                sh 'cp /root/tomcat-java-demo/target/ly-simple-tomcat-0.0.1-SNAPSHOT.war /usr/local/tomcat/webapps'
                sh '/usr/local/tomcat/bin/catalina.sh stop && /usr/local/tomcat/bin/catalina.sh start'
            }
        }
    }
}

構(gòu)建成功

image-20231011215242380

流水線構(gòu)建完成后webapps目錄下可以看到拷貝和解壓的ly-simple-tomcat-0.0.1-SNAPSHOT.war文件,服務重啟后會自動解壓war類型的文件

[root@localhost ~]# cd /usr/local/tomcat/webapps/
[root@localhost webapps]# 
[root@localhost webapps]# ls
docs      host-manager  jenkins.war                      ly-simple-tomcat-0.0.1-SNAPSHOT.war  ROOT
examples  jenkins       ly-simple-tomcat-0.0.1-SNAPSHOT  manager                              test
[root@localhost webapps]# 

訪問網(wǎng)頁,在地址欄端口號后面加上 /ly-simple-tomcat-0.0.1-SNAPSHOT/

image-20231011215537974

到此這篇關于tomcat部署jenkins項目的實現(xiàn)示例的文章就介紹到這了,更多相關tomcat部署jenkins 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Tomcat服務配置和自啟動詳解

    Tomcat服務配置和自啟動詳解

    這篇文章主要為大家詳細介紹了Tomcat服務配置和自啟動的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Tomcat容器管理安全的驗證方式匯總

    Tomcat容器管理安全的驗證方式匯總

    當訪問服務器中受保護的資源時,容器管理的驗證方法可以控制確認用戶身份的方式。Tomcat支持四種容器管理的安全防護。下面小編給大家分享Tomcat容器管理安全的驗證方式匯總,感興趣的朋友一起看看吧
    2016-11-11
  • Window下安裝Tomcat服務器的教程

    Window下安裝Tomcat服務器的教程

    這篇文章主要介紹了Window下安裝Tomcat服務器的教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2020-03-03
  • Tomcat ssl報錯Connector attribute SSLCertificateFile must be defined when using SSL with APR解決方法

    Tomcat ssl報錯Connector attribute SSLCertificateFile must be d

    這篇文章主要介紹了Tomcat ssl報錯Connector attribute SSLCertificateFile must be defined when using SSL with APR解決方法,需要的朋友可以參考下
    2014-12-12
  • 通過圖文講解Tomcat部署war包的方法步驟

    通過圖文講解Tomcat部署war包的方法步驟

    Tomcat是目前web開發(fā)中非常流行的Web服務器,下面這篇文章主要給大家介紹了關于如何通過圖文講解Tomcat部署war包的方法步驟,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2022-08-08
  • tomcat部署簡單的html靜態(tài)網(wǎng)頁的方法

    tomcat部署簡單的html靜態(tài)網(wǎng)頁的方法

    這篇文章主要介紹了tomcat部署簡單的html靜態(tài)網(wǎng)頁的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • 怎么減少本地調(diào)試tomcat重啟次數(shù)你知道嗎

    怎么減少本地調(diào)試tomcat重啟次數(shù)你知道嗎

    這篇文章主要為大家詳細介紹了怎么減少本地調(diào)試tomcat重啟次數(shù),使用Groovy,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Windows操作系統(tǒng)部署Tomcat的詳細過程

    Windows操作系統(tǒng)部署Tomcat的詳細過程

    Tomcat是一個開源的Java Servlet容器,用于處理Java Web應用程序的請求和響應,下面通過本文給大家介紹Windows操作系統(tǒng)部署Tomcat詳細講解,感興趣的朋友一起看看吧
    2025-05-05
  • 詳解Tomcat中Filter的執(zhí)行流程

    詳解Tomcat中Filter的執(zhí)行流程

    Filter是servlet規(guī)范中定義的java web組件, 在所有支持java web的容器中都可以使用,它是位于前端請求到servlet之間的一系列過濾器,也可以稱之為中間件,本文詳解介紹了Tomcat中Filter是怎樣執(zhí)行的,需要的朋友可以參考下
    2023-06-06
  • 阿里云服務器linux系統(tǒng)搭建Tomcat部署Web項目

    阿里云服務器linux系統(tǒng)搭建Tomcat部署Web項目

    這篇文章主要介紹了阿里云服務器linux系統(tǒng)搭建Tomcat部署Web項目,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-10-10

最新評論

清徐县| 高邑县| 丰原市| 盐池县| 襄汾县| 霍山县| 加查县| 鹰潭市| 龙海市| 九龙城区| 登封市| 阳城县| 鸡泽县| 华蓥市| 涡阳县| 水富县| 陇南市| 城固县| 广元市| 瑞安市| 武清区| 紫金县| 怀柔区| 呈贡县| 金寨县| 新田县| 高青县| 台中市| 增城市| 沂南县| 涞水县| 长沙县| 吐鲁番市| 清丰县| 大港区| 互助| 嘉善县| 大冶市| 广平县| 昭平县| 本溪|