欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Jenkins自動(dòng)部署SpringBoot項(xiàng)目實(shí)踐教程

 更新時(shí)間:2021年11月08日 09:40:09   作者:dxj1016  
這篇文章主要介紹了Jenkins自動(dòng)部署SpringBoot項(xiàng)目實(shí)踐教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

1、Jenkins安裝

下載jenkins安裝包,maven安裝包;打開(kāi)xftp將安裝包上傳到服務(wù)器;弄maven鏡像:進(jìn)入maven的conf文件夾,vim打開(kāi)setting.xml文件添加阿里云鏡像;wq!保存退出。

在這里插入圖片描述

 <!-- 阿里鏡像倉(cāng)庫(kù) -->
  <mirrors>
    <mirror>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>
            http://maven.aliyun.com/nexus/content/groups/public/
        </url>
        <mirrorOf>central</mirrorOf>
    </mirror>
  </mirrors>

配置環(huán)境變量,打開(kāi)/etc/profile文件,添加maven的環(huán)境變量;添加完成后記得執(zhí)行source /etc/profile使環(huán)境變量生效。添加配置如下:MAVEN_HOME改成自己maven的安裝目錄

MAVEN_HOME=/usr/local/maven3
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin

運(yùn)行 mvn -v驗(yàn)證maven是否安裝成功

在這里插入圖片描述

進(jìn)入jenkins安裝位置執(zhí)行:java -jar jenkins.war &;啟動(dòng);啟動(dòng)不成功,如果是端口占用,可以使用如下命令修改端口號(hào)并啟動(dòng)。執(zhí)行之后生成一個(gè)密碼,記下來(lái)

java -jar jenkins.war --ajp13Port=-1 --httpPort=8081 &

訪問(wèn)jenkins;如果訪問(wèn)不了,檢查有沒(méi)有在阿里云和寶塔開(kāi)放上面使用端口的安全組;如果不用寶塔那么開(kāi)發(fā)端口要使用命令:

firewall-cmd --zone=public --add-port=8081/tcp --permanent

訪問(wèn)http://服務(wù)器ip:端口號(hào);出現(xiàn)jenkins登錄頁(yè)面,使用第5步記住的密碼登錄。

2、Jenkins插件安裝

選擇系統(tǒng)管理,插件管理

在這里插入圖片描述

安裝ssh插件,點(diǎn)擊可選插件,搜索Publish Over SSH插件,安裝Plublish Over SSH插件之前得先按照Infrastructure plugin for Publish Over X插件。否則報(bào)錯(cuò)。

在這里插入圖片描述

在這里插入圖片描述

插件中搜索gitee,安裝插件。

在這里插入圖片描述

搜索 Jackson 2 API 插件

在這里插入圖片描述

搜索Java JSON Web Token (JJWT) 插件,Javadoc Plugin插件,JUnit Plugin

在這里插入圖片描述

搜索Maven Integration plugin插件,找不到就去掉后面的plugin搜索

在這里插入圖片描述

搜索 Publish Over SSH;SSH Build Agents plugin;SSH Credentials Plugin;SSH plugin;SSH2 Easy Plugin插件

在這里插入圖片描述

在這里插入圖片描述

插件在后面如果出現(xiàn)問(wèn)題提示是插件出現(xiàn)問(wèn)題,可以再百度一下缺少哪些插件再繼續(xù)安裝 3、Jenkins設(shè)置憑據(jù) 選擇系統(tǒng)管理,點(diǎn)擊Manage Gredentials,

在這里插入圖片描述

點(diǎn)擊Jenkins

在這里插入圖片描述

點(diǎn)擊全局憑據(jù)

在這里插入圖片描述

在這里插入圖片描述

3、點(diǎn)擊添加憑據(jù)

添加服務(wù)器憑據(jù),填寫(xiě)服務(wù)器登錄用戶(hù)名和密碼

在這里插入圖片描述

添加gitee用戶(hù)憑據(jù),填寫(xiě)gitee賬號(hào)用戶(hù)名密碼添加gitee私人令牌的憑據(jù),去gitee賬號(hào)添加私人令牌,獲取到私人令牌再添加憑據(jù)。

在這里插入圖片描述

4、Jenkins環(huán)境配置

4.1、全局配置

選擇Manage Jenkins系統(tǒng)管理,選擇Global Tool Configuration全局工具配置進(jìn)入配置java的一些配置環(huán)境

在這里插入圖片描述

進(jìn)入配置環(huán)境Maven和JDK并保存

這里的Maven選擇服務(wù)器中下載的maven的路徑,JDK選擇服務(wù)器安裝路徑,找不到JDK安裝路徑可以看這里服務(wù)器jdk安裝位置查詢(xún)步驟

在這里插入圖片描述

jdk取消自動(dòng)安裝,選擇服務(wù)器中jdk的安裝地址

在這里插入圖片描述

在這里插入圖片描述

4.2、系統(tǒng)配置

返回選擇Manage Jenkins系統(tǒng)管理,選擇系統(tǒng)配置

在這里插入圖片描述

Maven配置

在這里插入圖片描述

jenkins URL配置

在這里插入圖片描述

環(huán)境變量配置

在這里插入圖片描述

SSH配置

在這里插入圖片描述

Gitee配置

在這里插入圖片描述

使用密鑰方式登錄目標(biāo)發(fā)布服務(wù)器

輸入命令:ssh-keygen -t rsa回車(chē);出現(xiàn)東西直接復(fù)制()里面的東西粘貼;回車(chē);一直回車(chē)知道出現(xiàn)圖形。

在這里插入圖片描述

進(jìn)入 /root/.ssh文件夾下ls可以查看有三個(gè)東西,一個(gè)私鑰,一個(gè)公鑰,authorized_keys文件。使用命令:cat id_rsa.pub >> /root/.ssh/authorized_keys;文件將公鑰追加到authorized_keys文件中。

在這里插入圖片描述

在系統(tǒng)配置中的Public over SSH上的Path to key寫(xiě)上生成的ssh路徑::/root/.ssh/id_rsa

在這里插入圖片描述

選擇Confing System,配置ssh服務(wù),填寫(xiě)下面信息

在這里插入圖片描述

點(diǎn)擊Test之后如果出現(xiàn)錯(cuò)誤以下錯(cuò)誤,那么看看有沒(méi)有設(shè)置了憑據(jù):

在這里插入圖片描述

5、Jenkins自動(dòng)部署SpringBoot項(xiàng)目

新建一個(gè)springboot項(xiàng)目,寫(xiě)個(gè)demo測(cè)試可不可以運(yùn)行,然后上傳到gitee上新建tiem(新建任務(wù)),在Jenkins中新建任務(wù),選擇構(gòu)建一個(gè)maven項(xiàng)目,然后確定

在這里插入圖片描述

General設(shè)置Gitee項(xiàng)目鏈接

在這里插入圖片描述

源碼管理,在git那里點(diǎn)擊高級(jí),將+refs/heads/master:refs/remotes/origin/master +refs/pull/*/MERGE:refs/pull/*/MERGE 填入Refspec中

在這里插入圖片描述

構(gòu)建觸發(fā)器,構(gòu)建環(huán)境

在這里插入圖片描述

系統(tǒng)設(shè)置中的SSH remote hosts

在這里插入圖片描述

設(shè)置Pre Steps,Build,Build點(diǎn)擊高級(jí)可以展開(kāi)填寫(xiě)如下信息

在這里插入圖片描述

在這里插入圖片描述

設(shè)置Post Steps

在這里插入圖片描述

在這里插入圖片描述

shart.sh文件內(nèi)容如下:

/root/www/javaweb/project/testJenkis/demo-0.0.1-SNAPSHOT.jar是項(xiàng)目編譯后jar包出現(xiàn)在這里,jar命令是以項(xiàng)目的pom文件中的artifactId和version拼接起來(lái)的。

/root/www/javaweb/project/testJenkis/out.log是項(xiàng)目編譯后日志文件位置。

#!/bin/bash
source /etc/profile
export JAVA_HOME PATH CLASSPATH
JAVA_HOME=/usr/java/jdk1.8.0_121 #你自己的jdk路徑
PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
export BUILD_ID=dontKillMe
echo "  =====關(guān)閉Java應(yīng)用======"
PROCESS=`ps -ef |grep java |grep -v grep|grep /root/www/javaweb/project/testJenkis/demo-0.0.1-SNAPSHOT.jar|awk '{print $2}'`
for i in $PROCESS
do
  echo "Kill the $1 process [ $i ]"
  kill -9 $i
done
echo "  =====啟動(dòng)Java應(yīng)用======"
nohup java -jar /root/www/javaweb/project/testJenkis/demo-0.0.1-SNAPSHOT.jar  > /root/www/javaweb/project/testJenkis/out.log 2>&1 &
echo $! > savePid.txt
cat savePid.txt
rm  savePid.txt

然后給start.sh文件授權(quán),命令如下: 777代表可讀可寫(xiě)可執(zhí)行

chmod -R 777 start.sh

應(yīng)用保存任務(wù)設(shè)置點(diǎn)擊立即構(gòu)建,

在這里插入圖片描述

可以選擇控制臺(tái)輸出查看運(yùn)行結(jié)果,如果出現(xiàn)錯(cuò)誤,看提示修改,如果成功則可以訪問(wèn)項(xiàng)目中設(shè)置的接口路徑。

6、遇到問(wèn)題

1、重新啟動(dòng)jenkins忘記了登錄密碼

1. cd /root/.jenkins/users命令進(jìn)入users文件夾,查看該文件下是否有用戶(hù)文件夾,找到admin文件夾

2. 打開(kāi)admin文件夾,發(fā)現(xiàn)里面有一個(gè)config.xml文件,打開(kāi)改文件,找到passwordhash,可以先復(fù)制保存一下原來(lái)的passwordhash

3. 然后將passwordhash中的內(nèi)容修改成如下內(nèi)容并保存退出:`#jbcrypt:$2a$10$MiIVR0rr/UhQBqT.bBq0QehTiQVqgNpUGyWW2nJObaVAM/2xSQdSq`

4. 然后重啟jenkins,如果重啟失敗,可能端口占用,估計(jì)是之前啟動(dòng)的jenkins還在運(yùn)行,因此可以查看一下netstat -anp|grep 8081;端口是否占用,使用kill -9 進(jìn)程id來(lái)殺死該進(jìn)程。

5.然后重新之前啟動(dòng)jenkins命令:java -jar jenkins.war -ajp13Port=-1 -httpPort=8081

6. 訪問(wèn)jenkins使用123456密碼進(jìn)行登錄。

7. 成功

2、 安裝ssh插件出現(xiàn)問(wèn)題

選擇Manage Plugins ,可選插件,

在這里插入圖片描述

下載ssh的時(shí)候出現(xiàn)以下錯(cuò)誤

在這里插入圖片描述

出現(xiàn)失敗的原因是要先安裝下面的插件,然后再安裝就不會(huì)出錯(cuò)了。

在這里插入圖片描述

3、構(gòu)建項(xiàng)目出現(xiàn)如下錯(cuò)誤:

在這里插入圖片描述

在項(xiàng)目的pom.xml文件修改build為下面代碼:記得得上傳到gitee,或者直接在之前上傳到gitee的項(xiàng)目那里修改pom

 <build>
        <defaultGoal>compile</defaultGoal>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <excludes>
                        <exclude>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
            </plugin>
        </plugins>
    </build>

4、點(diǎn)擊立即構(gòu)建之后出現(xiàn)黃色,錯(cuò)誤如下:

在這里插入圖片描述

這個(gè)問(wèn)題是找不到strat.sh的在哪里,仔細(xì)看看配置那里的構(gòu)建后操作,一定要在根目錄下創(chuàng)建shart.sh文件,而且這里配置路徑的時(shí)候,要加上/root/不能直接www,否則就出現(xiàn)上面的錯(cuò)誤。

在這里插入圖片描述

5、如果編譯成功,但是沒(méi)有jar文件出現(xiàn)在服務(wù)器指定位置,查看out.log內(nèi)容發(fā)現(xiàn)

在這里插入圖片描述

然后試著修改指定jar位置的路徑

修改前:

在這里插入圖片描述

修改后:

在這里插入圖片描述

jar是放在root目錄下的www下,但是這里配置的時(shí)候不需要加上root,只有start.sh就必須要加上root,否則出錯(cuò)

成功解決問(wèn)題

在這里插入圖片描述

查看端口也運(yùn)行了

在這里插入圖片描述

查看瀏覽器也好了

在這里插入圖片描述

7、用到的命令

  • maven -v回車(chē);查看服務(wù)器是否安裝maven
  • java -version;查看服務(wù)器是否有jdk環(huán)境
  • mkdir maven;創(chuàng)建文件夾
  • tar -zxvf 文件名;解壓縮文件夾
  • whereis java;查看jdk安裝目錄
  • lsof -i:8080;查看端口8080是否被占用
  • kill -9 PID;殺死正在運(yùn)行的進(jìn)程
  • java jar jenkins.war --ajp13Port=-2 --httpPost=8080 &;啟動(dòng)jenkins程序
  • chmod -R 777 start.sh;給文件授權(quán),777可讀可寫(xiě)
  • pwd;顯示當(dāng)前目錄
  • vim 文件;打開(kāi)文件,i:編輯;esc:退出編輯;:wq!:保存退出

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

相關(guān)文章

  • springboot+redis自定義注解實(shí)現(xiàn)發(fā)布訂閱的實(shí)現(xiàn)代碼

    springboot+redis自定義注解實(shí)現(xiàn)發(fā)布訂閱的實(shí)現(xiàn)代碼

    在Redis中客戶(hù)端可以通過(guò)訂閱特定的頻道來(lái)接收發(fā)送至該頻道的消息,本文主要介紹了springboot+redis自定義注解實(shí)現(xiàn)發(fā)布訂閱,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-08-08
  • Java Durid進(jìn)行JDBC連接詳解

    Java Durid進(jìn)行JDBC連接詳解

    今天給大家?guī)?lái)的是關(guān)于Java的相關(guān)知識(shí),文章簡(jiǎn)單使用Durid進(jìn)行JDBC連接,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-09-09
  • Java基礎(chǔ)入門(mén)之switch怎么使用枚舉

    Java基礎(chǔ)入門(mén)之switch怎么使用枚舉

    在Java開(kāi)發(fā)中,switch語(yǔ)句是一種常用的流控制語(yǔ)句,而當(dāng)使用枚舉類(lèi)型作為條件時(shí),我們常常會(huì)遇到報(bào)錯(cuò)問(wèn)題,那么該如何解決呢,下面就來(lái)詳細(xì)講講
    2023-06-06
  • Java設(shè)計(jì)模式中的簡(jiǎn)單工廠模式解析

    Java設(shè)計(jì)模式中的簡(jiǎn)單工廠模式解析

    這篇文章主要介紹了Java設(shè)計(jì)模式中的簡(jiǎn)單工廠模式解析,簡(jiǎn)單工廠模式提供一個(gè)創(chuàng)建對(duì)象實(shí)例的功能,而無(wú)須關(guān)心其具體實(shí)現(xiàn),被創(chuàng)建實(shí)例的類(lèi)型可以是接口、抽象類(lèi),也可以是具體的類(lèi),需要的朋友可以參考下
    2023-11-11
  • Springmvc conver實(shí)現(xiàn)原理及用法解析

    Springmvc conver實(shí)現(xiàn)原理及用法解析

    這篇文章主要介紹了Springmvc conver實(shí)現(xiàn)原理及用法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • SpringBoot+Spring Security無(wú)法實(shí)現(xiàn)跨域的解決方案

    SpringBoot+Spring Security無(wú)法實(shí)現(xiàn)跨域的解決方案

    這篇文章主要介紹了SpringBoot+Spring Security無(wú)法實(shí)現(xiàn)跨域的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java代碼重構(gòu)的幾種模式詳解

    Java代碼重構(gòu)的幾種模式詳解

    這篇文章詳細(xì)介紹了Java代碼重構(gòu)的幾種模式,有需要的朋友可以參考一下
    2013-10-10
  • Java的MD5工具類(lèi)和客戶(hù)端測(cè)試類(lèi)

    Java的MD5工具類(lèi)和客戶(hù)端測(cè)試類(lèi)

    這篇文章主要介紹了Java的MD5工具類(lèi)和客戶(hù)端測(cè)試類(lèi),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2021-12-12
  • Java啟動(dòng)參數(shù)(-,?-X,?-XX參數(shù))的使用

    Java啟動(dòng)參數(shù)(-,?-X,?-XX參數(shù))的使用

    本文主要介紹了Java啟動(dòng)參數(shù)(-,?-X,?-XX參數(shù))的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Kafka中的producer攔截器與consumer攔截器詳解

    Kafka中的producer攔截器與consumer攔截器詳解

    這篇文章主要介紹了Kafka中的producer攔截器與consumer攔截器詳解,Producer 的Interceptor使得用戶(hù)在消息發(fā)送前以及Producer回調(diào)邏輯前有機(jī)會(huì)對(duì)消息做 一些定制化需求,比如修改消息等,需要的朋友可以參考下
    2023-12-12

最新評(píng)論