国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

DevOps-Jenkins-CI持續(xù)集成操作

這篇具有很好參考價(jià)值的文章主要介紹了DevOps-Jenkins-CI持續(xù)集成操作。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

創(chuàng)建項(xiàng)目

創(chuàng)建個(gè)web項(xiàng)目
DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
我這里直接用Spring Web自動(dòng)生成的demos

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd

啟動(dòng)項(xiàng)目,訪問(wèn)展示如下默認(rèn)頁(yè)面信息

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd

項(xiàng)目新增Docker構(gòu)建配置

在項(xiàng)目下新建docker目錄,新增Dockerfile、docker-compose.yml文件

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd

Dockerfile文件,將mytest.jar 復(fù)制到容器的/usr/local/目錄下,在/usr/local執(zhí)行命令java -jar mytest.jar

FROM daocloud.io/library/java:8u40-jdk
COPY mytest.jar /usr/local/
WORKDIR /usr/local
CMD java -jar mytest.jar

docker-compose.yml文件,當(dāng)前目錄以Dockerfile構(gòu)建鏡像,鏡像叫mytest,版本v1.0,容器名字mytest,端口7777

version: '3.1'
services:
  mytest:
    build:
      context: ./
      dockerfile: Dockerfile
    image: mytest:v1.0
    container_name: mytest
    ports:
      - 7777:8080

修改pom.xml文件

build下添加配置,讓jar包以mytest為名(mytest.jar,Docker構(gòu)建里也是設(shè)置的復(fù)制名為這個(gè)jar包)

<finalName>mytest</finalName>

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
注意:如果跟我一樣用默認(rèn)生成的web還需修改主類配置,將主類配置修改如下。不然在本地正常運(yùn)行,打成jar包后默認(rèn)配置會(huì)跳過(guò)然后報(bào)錯(cuò):no main manifest attribute, in mytest.jar

                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <mainClass>com.monster.mytest.MytestApplication</mainClass>
                        </manifest>
                    </archive>
                </configuration>

上傳代碼

將代碼上傳至Gitlab
現(xiàn)在Gitlab還未做任何動(dòng)作,先去Gitlab(192.168.170.111:8888)新建項(xiàng)目
這里測(cè)試我直接設(shè)置的公開(kāi)的,不想多一步密碼的操作
DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
在IDEA添加Git遠(yuǎn)程

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
推送到遠(yuǎn)程倉(cāng)庫(kù)

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
第一次推送會(huì)提示要令牌
DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
那我們就去Gitlab生成個(gè)令牌,來(lái)到用戶設(shè)置里面 > Access Tokens
Token名稱隨意,必須授權(quán)api、read_user這兩個(gè)范圍,點(diǎn)擊創(chuàng)建即可

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
點(diǎn)擊創(chuàng)建按鈕后,不要刷新或關(guān)閉頁(yè)面,立馬滑到最上面可以看見(jiàn)生成的token
只展示一次,刷新或關(guān)閉頁(yè)面就得重新生成。

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
將token復(fù)制到IDEA提示的令牌款里既可以推送到Gitlab倉(cāng)庫(kù)了。

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd

Jenkins配置

添加遠(yuǎn)程服務(wù)器

首先來(lái)到Jenkins配置 > 系統(tǒng)管理 > 系統(tǒng)配置,滑動(dòng)到最下面添加SSH遠(yuǎn)程服務(wù)器,這里就是Publish Over SSH插件起到的重要。

將你需要把項(xiàng)目部署到哪臺(tái)服務(wù)器,就添加哪臺(tái)服務(wù)器的鏈接信息,例如這里我把項(xiàng)目部署到服務(wù)器192.168.170.111上(注意:部署的遠(yuǎn)程服務(wù)器需要安裝好Docker)

設(shè)置好信息可以點(diǎn)擊右下角的test configuration 測(cè)試一下連通性,是否能正常連接。

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
密碼得點(diǎn)擊左下角的“高級(jí)”按鈕設(shè)置,支持使用密鑰對(duì)的方式遠(yuǎn)程連接。

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd

Jenkins任務(wù)創(chuàng)建

新建個(gè)任務(wù),構(gòu)建一個(gè)自由風(fēng)格的軟件項(xiàng)目

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
源碼管理處設(shè)置你的git倉(cāng)庫(kù)地址,我這里設(shè)置的公開(kāi)倉(cāng)庫(kù)拉去代碼的時(shí)候無(wú)需賬號(hào)密碼,私有的點(diǎn)擊高級(jí)按鈕上面的“添加”按鈕添加賬號(hào)或密鑰

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
需要注意你的Gitlab倉(cāng)庫(kù)的主分支是什么,設(shè)置對(duì)應(yīng)不然拉去不到代碼
DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd

Build Steps設(shè)置maven,選中你安裝的maven名稱,目標(biāo)命令:拉取完代碼后清理構(gòu)建跳過(guò)測(cè)試生產(chǎn)target目錄此時(shí)還在Jenkins服務(wù)器。

clean package -DskipTests

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd

SSH Publishers,選擇我們要發(fā)布到哪臺(tái)服務(wù)器上,就是前面在添加的170.111那臺(tái),配置命令做了下面兩個(gè)步驟。

Transfer SetSource files:將target目錄下所有.jar的文件和docker目錄下的所有文件復(fù)制到遠(yuǎn)程應(yīng)用服務(wù)器的/usr/local/test目錄下。(Jenkins系統(tǒng)設(shè)置里面SSH添加服務(wù)器時(shí)設(shè)置的默認(rèn)遠(yuǎn)程路徑)

target/*.jar docker/*

Exec command:這時(shí)170.111的/usr/local/test/目錄下有target和docker兩個(gè)目錄。執(zhí)行下面的代碼命令把target目錄下人jar包移動(dòng)到Docker目錄里來(lái),然后在執(zhí)行容器關(guān)閉和后臺(tái)啟動(dòng)構(gòu)建動(dòng)作

cd /usr/local/test/docker
mv ../target/*jar ./
docker compose down
docker compose up -d --build

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd

Jenkins構(gòu)建

點(diǎn)擊Jenkins任務(wù)構(gòu)建按鈕,觀看日志成功

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  2.906 s
[INFO] Finished at: 2024-03-11T09:03:12Z
[INFO] ------------------------------------------------------------------------
SSH: Connecting from host [3821aea39450]
SSH: Connecting with configuration [應(yīng)用服務(wù)器-170.111] ...
SSH: EXEC: completed after 3,402 ms
SSH: Disconnecting configuration [應(yīng)用服務(wù)器-170.111] ...
SSH: Transferred 3 file(s)
Build step 'Send files or execute commands over SSH' changed build result to SUCCESS
Finished: SUCCESS

構(gòu)建完成后,會(huì)看見(jiàn)在170.111服務(wù)器跑起來(lái)個(gè)名稱叫mytest容器,映射端口7777,鏡像mytest,版本v1.0

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd

訪問(wèn)頁(yè)面,192.168.170.111:7777

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd

測(cè)試持續(xù)集成

修改項(xiàng)目代碼

這里我修改默認(rèn)的index.html頁(yè)面內(nèi)容

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
只需要把交代碼提交到Gitlab

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd
然后在Jenkins上,重新點(diǎn)擊一下構(gòu)建按鈕,構(gòu)建完成后刷新頁(yè)面。

已經(jīng)更新頁(yè)面內(nèi)容了,到此完成了CI持續(xù)集成動(dòng)作。

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd

注意

由于每次構(gòu)建都會(huì)產(chǎn)生一個(gè)同名稱同版本的鏡像,導(dǎo)致出現(xiàn)多個(gè)為none的鏡像,會(huì)占用磁盤空間

[root@170.111 ~]# docker images
REPOSITORY                                                  TAG            IMAGE ID       CREATED         SIZE
mytest                                                      v1.0           79953e7736f6   19 hours ago    833MB
<none>                                                      <none>         341965b30bdb   19 hours ago    833MB
<none>                                                      <none>         5be66eda3a9f   21 hours ago    833MB
<none>                                                      <none>         76502810f6e2   21 hours ago    833MB
<none>                                                      <none>         a081353ee813   46 hours ago    816MB
<none>                                                      <none>         6274e74dbfe5   46 hours ago    816MB
<none>                                                      <none>         92517e725bf1   47 hours ago    816MB
<none>                                                      <none>         3e2cef065c83   47 hours ago    816MB
<none>                                                      <none>         62562f7fbc8f   47 hours ago    816MB
<none>                                                      <none>         cd7354c84a9e   2 days ago      816MB
<none>                                                      <none>         27e5c4ec8cf6   2 days ago      816MB
<none>                                                      <none>         4c0050b78b5f   2 days ago      816MB
<none>                                                      <none>         02a8eea88e51   2 days ago      816MB
<none>                                                      <none>         fb76f18fc433   2 days ago      816MB
<none>                                                      <none>         6a0d37f91dc0   2 days ago      816MB

可以通過(guò)Docker命令清理:docker image prune -f

[root@170.111 ~]# docker image prune -f
Deleted Images:
deleted: sha256:92517e725bf1e5d7da3c1dda813abd0ecfb384e42e24274d688f178edb3274a5
deleted: sha256:6274e74dbfe5859d0c524cf944f4d6367f7ccb838b6959a2305cb3074a7a5db2
deleted: sha256:3e2cef065c83863c4fc72c6daaa91ad863ffb6169da989401439edd7b84da217
deleted: sha256:974684128082884b37b1ed66bdc92a0df158c46651bcc72a10016bc8254f5cc5
deleted: sha256:6a0d37f91dc07c88d018a2e5416a4421dacc03299d16af79fdac03863753cff5
deleted: sha256:ade3c592595e3988a9a11cecfc153d03c9125b3e0c24f0cdaf642cfadebd659a
deleted: sha256:27e5c4ec8cf67ea3e8fc1bf2e18328a63515d19332808480e263732347db96bf
deleted: sha256:4c0050b78b5f40dd2f005f92f7733c92f2ed8618e6e8deedcf72695795d2e07a
deleted: sha256:052d315bd2eb53b89eee437218b2abf0dc1a53db7fd6122fc8c56dcf8b0afb60
deleted: sha256:cd7354c84a9e307819628e3c7ac23c7d0d5a84783c659c3b85355f22fb12673e
deleted: sha256:6923a5cc1787c1a985feeec6efdb28ddb202cad65e6f3454bd2a08e8f1573326
deleted: sha256:02a8eea88e51a5874b2fbd14e267f717398251dc34f073ea5ca1bed4cf2c514e
deleted: sha256:62562f7fbc8f6f059072855fec452aa9ffd4927f130a069c59a0ee097b5d5ab4
deleted: sha256:a081353ee81397bb5464a44409248d0c192e7b57eb247af4ad74ef7f4454da68
deleted: sha256:0461e94f875334812d180c094c2a998d89ae74da08b6f34b0cedcdaf755126de
deleted: sha256:341965b30bdba2baabdddcdf3d5e3e98ff3c58eb696fe186c40646d05ffe7d9d
deleted: sha256:fb76f18fc433d3fbf8aa42dc0e2ee8dfaad6ee722fd1390288c37b7591cd7563
deleted: sha256:5be66eda3a9f5fbb5284e6e785a9cb5ac2484c6d5c53491d595a89192ca6aea3

也加到Jenkins執(zhí)行命令中,就不用我們手動(dòng)去清理了

DevOps-Jenkins-CI持續(xù)集成操作,DevOps,devops,jenkins,ci/cd文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-839268.html

到了這里,關(guān)于DevOps-Jenkins-CI持續(xù)集成操作的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【云原生 ? DevOps】一文掌握持續(xù)集成工具 Jenkins

    【云原生 ? DevOps】一文掌握持續(xù)集成工具 Jenkins

    目錄 一、持續(xù)集成工具 Jenkins 介紹 1. 什么是持續(xù)集成 2. Jenkins 介紹 二、Jenkins 的安裝與部署 1. 安裝?Jenkins 2. 本地訪問(wèn) Jenkins 3. 插件的安裝 4. 卸載 Jenkins 三、Jenkins 全局配置 1. Git 的安裝與配置 2. JDK 的安裝與配置 3. maven 的安裝與配置 三、將代碼上傳至 Git 服務(wù)器 1. Gogs 的搭

    2024年02月03日
    瀏覽(28)
  • SkyEye與Jenkins的DevOps持續(xù)集成解決方案

    SkyEye與Jenkins的DevOps持續(xù)集成解決方案

    在技術(shù)飛速發(fā)展的當(dāng)下,隨著各行各業(yè)的軟件邏輯復(fù)雜程度提升帶來(lái)的需求變更,傳統(tǒng)測(cè)試已無(wú)法滿足與之相對(duì)應(yīng)的一系列測(cè)試任務(wù),有必要引入一個(gè)自動(dòng)化、可持續(xù)集成構(gòu)建的DevOps平臺(tái)來(lái)解決此類問(wèn)題。本文將主要介紹SkyEye與Jenkins的持續(xù)集成解決方案。 何謂DevOps?DevOps是

    2024年02月15日
    瀏覽(25)
  • 軟件測(cè)試學(xué)習(xí)筆記丨持續(xù)集成DevOps - Jenkins安裝

    軟件測(cè)試學(xué)習(xí)筆記丨持續(xù)集成DevOps - Jenkins安裝

    本文轉(zhuǎn)自測(cè)試人社區(qū),原文鏈接:https://ceshiren.com/t/topic/30028 通過(guò) war 包安裝 通過(guò)安裝包安裝(不推薦) 通過(guò) docker 命令安裝(推薦 Linux 環(huán)境): docker pull jenkins/jenkins:lts 2.1 ,war包啟動(dòng)(用于調(diào)試,不推薦安裝): (1), 下載war包后, 進(jìn)入對(duì)應(yīng)的war下載的目錄,通過(guò)命令啟

    2024年04月09日
    瀏覽(61)
  • (十六)devops持續(xù)集成開(kāi)發(fā)——jenkins流水線構(gòu)建之郵件通知

    (十六)devops持續(xù)集成開(kāi)發(fā)——jenkins流水線構(gòu)建之郵件通知

    本節(jié)內(nèi)容主要介紹jenkins在流水線任務(wù)構(gòu)建完成后的通知操作,使用jenkins的郵件通知插件完成構(gòu)建任務(wù)結(jié)束的通知。一般項(xiàng)目發(fā)布都會(huì)通知相關(guān)的責(zé)任人,這樣項(xiàng)目發(fā)布在出現(xiàn)問(wèn)題時(shí)能夠及時(shí)的處理。 ①在插件中心安裝Email Extension郵件通知插件 ②申請(qǐng)一個(gè)發(fā)送郵件的郵箱服務(wù)

    2024年02月21日
    瀏覽(39)
  • (十九)devops持續(xù)集成開(kāi)發(fā)——jenkins的一些常用插件和工具的安裝

    (十九)devops持續(xù)集成開(kāi)發(fā)——jenkins的一些常用插件和工具的安裝

    本節(jié)內(nèi)容會(huì)著重介紹jenkins持續(xù)集成開(kāi)發(fā)工具的一些常用插件安裝以及全局工具的配置安裝,并說(shuō)明其主要作用。在開(kāi)始插件和工具安裝之前,我們要保證可以正常訪問(wèn)網(wǎng)絡(luò),并且使用國(guó)內(nèi)的插件更新地址,便于插件的正常安裝。官方的地址可能會(huì)導(dǎo)致安裝失敗。以下是一些可

    2024年04月27日
    瀏覽(48)
  • (十四)devops持續(xù)集成開(kāi)發(fā)——jenkins流水線使用pipeline方式發(fā)布項(xiàng)目

    (十四)devops持續(xù)集成開(kāi)發(fā)——jenkins流水線使用pipeline方式發(fā)布項(xiàng)目

    本節(jié)內(nèi)容我們使用另外一種方式pipeline實(shí)現(xiàn)項(xiàng)目的流水線部署發(fā)布,Jenkins Pipeline是一種允許以代碼方式定義持續(xù)集成和持續(xù)交付流水線的工具。通過(guò)Jenkins Pipeline,可以將整個(gè)項(xiàng)目的構(gòu)建、測(cè)試和部署過(guò)程以腳本的形式寫入Jenkinsfile中,實(shí)現(xiàn)對(duì)整個(gè)流程的可視化管理和控制。在

    2024年02月21日
    瀏覽(37)
  • 『DevOps最佳實(shí)踐』使用Jenkins和Harbor進(jìn)行持續(xù)集成和交付的解決方案

    『DevOps最佳實(shí)踐』使用Jenkins和Harbor進(jìn)行持續(xù)集成和交付的解決方案

    ??讀完這篇文章里你能收獲到 全文采用圖文形式講解 學(xué)會(huì)使用Harbor配置項(xiàng)目 學(xué)會(huì)在Jenkins中配置Harbor推送權(quán)限 使用Jenkins和Harbor進(jìn)行持續(xù)集成的實(shí)踐 感謝點(diǎn)贊+收藏,避免下次找不到~ 在現(xiàn)代軟件開(kāi)發(fā)中,自動(dòng)化部署是提高效率和可靠性的關(guān)鍵。本文將帶你深入探索如何使用

    2024年02月08日
    瀏覽(26)
  • (十五)devops持續(xù)集成開(kāi)發(fā)——jenkins流水線構(gòu)建策略配置及觸發(fā)器的使用

    (十五)devops持續(xù)集成開(kāi)發(fā)——jenkins流水線構(gòu)建策略配置及觸發(fā)器的使用

    本節(jié)內(nèi)容我們主要介紹在Jenkins流水線中,其構(gòu)建過(guò)程中的一些構(gòu)建策略的配置,例如通過(guò)遠(yuǎn)程http構(gòu)建、定時(shí)任務(wù)構(gòu)建、輪詢SCM構(gòu)建、參數(shù)化構(gòu)建、Git hook鉤子觸發(fā)構(gòu)建等,可根據(jù)不同的需求完成不同構(gòu)建策略的配置。 - 構(gòu)建策略說(shuō)明: - 測(cè)試驗(yàn)證 - 構(gòu)建說(shuō)明 - 測(cè)試驗(yàn)證 - 配置

    2024年02月21日
    瀏覽(39)
  • 實(shí)踐:devops之云主機(jī)模式持續(xù)部署(ci-cd)

    實(shí)踐:devops之云主機(jī)模式持續(xù)部署(ci-cd)

    https://www.yuque.com/xyy-onlyone/aevhhf?# 《玩轉(zhuǎn)Typora》 2條Jenkins pipeline CI pipeline CD pipeline 標(biāo)準(zhǔn)規(guī)范 項(xiàng)目規(guī)范與總體設(shè)計(jì) 公司里面要使用流水線要做持續(xù)集成CI/CD的項(xiàng)目越來(lái)越多,這對(duì)流水線的設(shè)計(jì)和開(kāi)發(fā)有不同的要求。我們經(jīng)常聽(tīng)到用戶的反饋: 各種 不同語(yǔ)言的技術(shù)棧, 如何使流

    2024年02月12日
    瀏覽(18)
  • DevOps搭建(十九)-Jenkins+K8s自動(dòng)化CI搭建詳細(xì)步驟

    DevOps搭建(十九)-Jenkins+K8s自動(dòng)化CI搭建詳細(xì)步驟

    完整的pipeline-auto.yml腳本如下 完整的Jenkinsfile腳本如下 在Jenkins插件管理中搜索GitLab插件進(jìn)行安裝。 進(jìn)入Jenkins項(xiàng)目配置里的 構(gòu)建觸發(fā)器 ,勾選如下選項(xiàng): 從系統(tǒng)管理-系統(tǒng)配置-Gitlab將驗(yàn)證去掉,生產(chǎn)最好配置保證安全。 如果是GitLab和Jenkins在同一臺(tái)服務(wù)器,需要開(kāi)啟允許請(qǐng)求

    2024年01月23日
    瀏覽(33)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包