Jenkins流水線發布,一篇就解決你的所有疑惑

這次搭建的項目比較常規,前端是react寫的,后端是springboot,并且由于是全棧開發,所以是在同一個項目中。接下來我演示下怎么用jenkins進行自動化發布。

1.jenkins必裝插件

這里用到的是jenkinsFile主要是基于Groovy這個沙盒,有些前置插件。這里使用maven進行打包,所以需要Maven Integration plugin和Pipeline Maven Integration Plugin。Pip這個是由于后面的語法withMaven要用。
NodeJs打包前端要用到NodeJS Plugin和Pipeline: Nodes and Processes。
jenkins是部署在運維機,所以要對遠端的服務器進行發布,要用到SSH Agent Plugin。

所以總共要用到這些插件:Maven Integration plugin、Pipeline Maven Integration Plugin、NodeJS Plugin、Pipeline: Nodes and Processes、SSH Agent Plugin。

2.配置工具

這里有兩種方式,一種是自動安裝,一種就是用你本地的配置,其實兩種都沒差。用本地的話,就是多配置一下目錄。這里要注意的是,如果你是docker部署的jenkins并且需要給jenkins做讀寫權限,要給目錄授權下,代碼如下:

#jenkins默認就是1000:1000
chown -R 1000:1000 /opt/apache-maven-3.6.3/

其他的就簡單截圖。
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

3.配置令牌

你拉代碼會涉及到git的賬號密碼,你發送遠端服務器會涉及到服務器的密鑰,這邊點進去根據自己需要配置就好。
在這里插入圖片描述
在這里插入圖片描述

4.創建項目

創建很簡單,主要就是看你jenkinsFile怎么寫,我這里會提供簡單參考。這里有個踩坑,EOF換行之后前面一定不能有空格。
在這里插入圖片描述

//git倉庫配置
def coding = [:]
coding.GIT_REPO_URL="xxx"
coding.CREDENTIALS_ID="xxx"
coding.GIT_BUILD_REF="xxx"//遠端服務器配置
def serverConfig = [:]
serverConfig.credentialsId="xxx"
serverConfig.ip = "x

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/35743.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/35743.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/35743.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

springboot實現json文件生成,壓縮為zip文件并在瀏覽器下載

示例 RestController public class FileController {private static final Logger logger LoggerFactory.getLogger(FileController.class);private static final String filePath "/fileTemp";Autowiredprivate ObjectMapper objectMapper;GetMapping("/v1/…

測試基礎16:測試用例設計方法-測試大綱法

課程大綱 1、應用場景 驗證頁面跳轉:有多個窗口/頁面,每個窗口/頁面有多個動作,每個動作之間有相互的聯系的場景。看點擊后,頁面跳轉正確與否。 2、設計步驟 step1.列出大綱:列出涉及的頁面和頁面可執行的動作。 s…

生命在于學習——Python人工智能原理(4.7)

四、Python的程序結構與函數 4.4 函數 函數能將代碼劃分為若干模塊,每一個模塊可以相對獨立的實現某一個功能,函數有兩個主要功能,分別是降低編程難度和實現代碼復用,函數是一種功能抽象,復用它可以將一個復雜的大問…

深拷貝與淺拷貝的理解

深拷貝和淺拷貝是復制對象時的兩種不同方式,它們之間的區別在于它們如何處理對象的引用類型成員。 淺拷貝(Shallow Copy) 淺拷貝是指創建一個新對象,這個新對象是對原對象的字段的一個精確副本。對于字段中的基本數據類型&#…

【C#】找不到屬性集方法。get只讀屬性用了反射設置setValue肯定報錯

歡迎來到《小5講堂》 這是《C#》系列文章,每篇文章將以博主理解的角度展開講解。 溫馨提示:博主能力有限,理解水平有限,若有不對之處望指正! 背景 找不到屬性集方法。get只讀屬性用了反射設置setValue肯定報錯 報錯…

IPFoxy Tips:匿名海外代理IP的使用方法及注意事項

在互聯網上,隱私和安全問題一直備受關注。為了保護個人隱私和數據安全,使用匿名代理IP是一種常用的方法。匿名代理IP可以隱藏用戶的真實IP地址,使用戶在訪問網站時更加隱秘和安全。 本文將介紹匿名代理IP的基本原理和核心功能。 基本原則 匿…

2024期權交易傭金手續費最低是多少?期權交易有哪些成本?

顯性成本 期權交易的顯性成本包含期權交易的傭金和交易所費用,分別支付給券商和交易所,統一由券商代收。 傭金 期權傭金是期權交易時支付給券商的費用,傭金通常以交易金額的一定比例計算,可以是固定費用,也可以是滑…

用兩個鐘,我又在VMWARE上搞了一套內部網配置

最近要學es,所以打算自己用虛擬機搞個NAT,又搞了兩個鐘。為了不再費勁嘗試,也為了造福大眾,所以選擇搞一份NAT筆記!!!! 1.初始化網關和DNS 我們給網關配置一個地址192.168.96.1&…

【多模態】BEiT v2

鏈接:https://arxiv.org/pdf/2208.06366 論文:BEIT V2: Masked Image Modeling with Vector-Quantized Visual Tokenizers Introduction Motivation:Masked image modeling (MIM) 任務在自監督表征學習上取得了不錯的成績,但是現…

教師資格證考試面試報名流程

文章目錄 前言面試報名流程一、登錄官網二、選擇報考省份三、注冊報名賬號四、確認考試承諾五、填報個人信息六、上傳個人照片七、查看個人信息八、面試報名九、等待審核十、考試繳費最后(必看)附錄1. 中小學教師資格考試網2. 廣東省教資考試報名通知&am…

Linux加固-權限管理_chattr之i和a參數

一、參數i i:如果對文件設置了i屬性,不允許對文件進行刪除、改名,也不能添加和修改數據;如果對目錄設置了i屬性,那么只能修改目錄下文件的數據,但不允許建立和刪除文件。(相當于把文件給鎖住了,…

【Mysql】多表、外鍵約束

多表 1.1 多表簡述 實際開發中,一個項目通常需要很多張表才能完成。 例如一個商城項目的數據庫,需要有很多張表:用戶表、分類表、商品表、訂單表… 1.2 單表的缺點 1.2.1 數據準備 創建一個數據庫 db3 CREATE DATABASE db3 CHARACTER SET utf8;數據庫…

Segment any Text:優質文本分割是高質量RAG的必由之路

AI應用開發相關目錄 本專欄包括AI應用開發相關內容分享,包括不限于AI算法部署實施細節、AI應用后端分析服務相關概念及開發技巧、AI應用后端應用服務相關概念及開發技巧、AI應用前端實現路徑及開發技巧 適用于具備一定算法及Python使用基礎的人群 AI應用開發流程概…

基于qemu_v8 + optee400構建自定義app

構建基于libckteec的tls安全通信應用程序,應用目錄結構 $ tree -L 2 . ├── libp11 │ ├── libp11-libp11-0.4.12 │ ├── mk_optee_three_part.sh │ └── out ├── openssl │ ├── mk_optee_three_part.sh │ ├── openssl-1.1.1w │ …

vue項目中封裝element分頁組件

我們都知道封裝組件是為了方便在項目中使用,全局封裝之后哪個模塊使用直接復制就行了,分頁在后臺項目中用到的地方也是很多的,所以我們就全局封裝一下分頁組件,以后也方便在項目中使用,接下來封裝的這個分頁也是elemen…

clean code-代碼整潔之道 閱讀筆記(第十四章)

第十四章 逐步改進——對一個命令行參數解析程序的案例研究 ps:本章設計代碼示例所以篇幅會較長,推薦直接看原文,思路、代碼講解的很清楚 本章示例:解析命令行參數的工具 —— Args Args的簡單用法 public static void main(Stri…

vue中動態綁定樣式名的方式有幾種?

在Vue中可以使用動態綁定樣式名的方式有幾種,具體取決于你的需求和使用的場景。 使用對象語法: 可以通過在data中定義一個變量,然后在模板中使用對象語法來動態綁定樣式名。 <template><div :class="{ active: isActive }">Hello Vue!</div> &l…

網絡文化經營許可證(文網文)辦理全面講解

隨著互聯網時代的飛速發展&#xff0c;互聯網早已滲透到人們的生活中&#xff0c;各類直播、短視頻成為大家生活娛樂必不可少的一部分。注冊一家從事互聯網行業的企業是一個不錯的選擇。那互聯網企業需要辦理什么證件資質呢&#xff1f;在互聯網行業從事盈利文化活動必須持有網…

【精品方案】智能制造之路(93頁PPT)

引言&#xff1a;智能制造之路&#xff1a;革新制造業的引領之旅 隨著科技的迅猛發展&#xff0c;特別是人工智能、物聯網、大數據等技術的不斷進步&#xff0c;制造業正迎來一場深刻的變革。智能制造&#xff0c;作為這場變革的核心&#xff0c;正逐步成為推動產業升級和轉型發…

MySQL為什么不建議使用多表JOIN

一、典型回答 之所以不建議使用JOIN查詢&#xff0c;最主要的原因就是JOIN的效率比較低。 MySQL是使用了嵌套循環&#xff08;Nested-Loop Join&#xff09;的方式實現關聯查詢的&#xff0c;簡單點說就是要通過兩層循環&#xff0c;用第一張表做外循環&#xff0c;第二張表做內…