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

nodejs前端項(xiàng)目的CI/CD實(shí)現(xiàn)(二)jenkins的容器化部署

這篇具有很好參考價(jià)值的文章主要介紹了nodejs前端項(xiàng)目的CI/CD實(shí)現(xiàn)(二)jenkins的容器化部署。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、背景

docker安裝jenkins,可能你會(huì)反問,這太簡(jiǎn)單了,有什么好講的。

我最近就接手了一個(gè)打包項(xiàng)目,它是一個(gè)nodejs的前端項(xiàng)目,jenkins已在容器里部署且運(yùn)行OK。

但是,前端組很追求新技術(shù),不斷地升級(jí)Nodejs的版本,之前是14,現(xiàn)在需要升級(jí)到16。

也就是說,原本運(yùn)行順暢的打包不靈了,必須得升級(jí)Nodejs才行。

我要看下文檔,得知道jenkins容器的運(yùn)行命令,才好去修改并重啟容器。

這是我的第一反應(yīng),可也正是這個(gè)思維,導(dǎo)致走了不少?gòu)澛贰?/p>

二、踩過的坑

1、文檔少,交接中斷許久

文檔只有機(jī)器的密碼,以及jenkins的admin超管賬戶的密碼。
并沒有交待Jenkins容器是怎么起來(lái)的,而所謂交接也中斷不知多久,沒人知道此時(shí)。。

2、思維定勢(shì)

我的這個(gè)固定思維,導(dǎo)致我走了不少?gòu)澛贰R舱驗(yàn)榇?,我才想把這期間遇到的問題,梳理出來(lái),希望能夠幫助到有需要的同學(xué)。

三、分析已部署的容器

主要需要知道以下信息,對(duì)于Jenkins容器來(lái)說:

  • 鏡像image
  • volume
  • 端口映射
  • 環(huán)境變量

對(duì)于本文的情況來(lái)說,鏡像image和端口映射是很容易看到,最重要的信息莫過于volume持久化。

當(dāng)然你可以借助于docker inscept命令,我這里是使用portainer界面查看。

nodejs前端項(xiàng)目的CI/CD實(shí)現(xiàn)(二)jenkins的容器化部署,前端,ci/cd,jenkins,運(yùn)維,云原生,node.js,容器
從下面詳情,也可以看到鏡像image名稱,使用的就是官方鏡像。
nodejs前端項(xiàng)目的CI/CD實(shí)現(xiàn)(二)jenkins的容器化部署,前端,ci/cd,jenkins,運(yùn)維,云原生,node.js,容器
從下面的環(huán)境變量,可以看到,jenkins使用的版本是2.323。在制作自定義鏡像的時(shí)候,這個(gè)信息可以幫助到我們?cè)撨x擇哪個(gè)版本。
nodejs前端項(xiàng)目的CI/CD實(shí)現(xiàn)(二)jenkins的容器化部署,前端,ci/cd,jenkins,運(yùn)維,云原生,node.js,容器

四、容器化部署

從上文,我們不難倒退出目前在運(yùn)行中的容器,運(yùn)行腳本大致是:

docker run -d -uroot \
-p 8080:8080 \
-p 50000:50000 \
--name jenkins \
-v /opt/jenkins_home:/var/jenkins_home \
jenkins/jenkins:2.323

可是問題來(lái)了,jenkins job打包需要的那些命令和工具呢, 他們?cè)谀模?/p>

也分為幾種可能,但都沒找到。

  • jenkins plugin插件
  • 系統(tǒng)管理–》全局工具設(shè)置
  • 宿主機(jī)和容器做持久化映射
  • 容器里安裝(遺漏了這點(diǎn),后果很嚴(yán)重)

前面三處都找了,也沒找到,可偏偏遺漏了最后一處。。。因?yàn)檫@種方式,我自己在操作中比較忌諱。

容器一定被刪除后,安裝的命令和工具就都丟失了,并且對(duì)于運(yùn)維來(lái)說,也是透明的。

就是說,別人并不知道你對(duì)容器具體有做什么改進(jìn),一頭霧水。

1、安裝方式一(不推薦)

nodejs前端項(xiàng)目的CI/CD實(shí)現(xiàn)(二)jenkins的容器化部署,前端,ci/cd,jenkins,運(yùn)維,云原生,node.js,容器
我試著做了,但總會(huì)缺這缺那的,很難真正跑起來(lái)。

因?yàn)樗拗鳈C(jī)是centos,而jenkins容器是ubuntu操作系統(tǒng)。

想要在ubuntu系統(tǒng)里,去執(zhí)行一個(gè)centos上的可執(zhí)行文件,何其難也~~

因?yàn)榭蓤?zhí)行文件還依賴操作系統(tǒng)底層的函數(shù)及文件。

可以說,不僅不推薦,似乎本文也行不通。。

2、遺漏的方案(不科學(xué),不推薦)

nodejs前端項(xiàng)目的CI/CD實(shí)現(xiàn)(二)jenkins的容器化部署,前端,ci/cd,jenkins,運(yùn)維,云原生,node.js,容器

這種方式,就是拿容器當(dāng)虛擬機(jī)使用,丟失了容器化的內(nèi)涵和意義。

缺什么軟件,你就去容器里安裝,問題是簡(jiǎn)單地解決了,留給運(yùn)維一堆坑。

后面接手的人不禁反問一句:如果虛擬機(jī)那么好使, 還容器化干嘛。繞來(lái)繞去,不知不覺中又繞回去了。

3、推薦的方案(也是下文要進(jìn)一步描述的方案)

nodejs前端項(xiàng)目的CI/CD實(shí)現(xiàn)(二)jenkins的容器化部署,前端,ci/cd,jenkins,運(yùn)維,云原生,node.js,容器

限于篇幅, 對(duì)jenkins的容器化部署就說到這, 見下文。。。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-807255.html

到了這里,關(guān)于nodejs前端項(xiàng)目的CI/CD實(shí)現(xiàn)(二)jenkins的容器化部署的文章就介紹完了。如果您還想了解更多內(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)文章

  • gitlab ci/cd+harbor+k8s實(shí)現(xiàn)一鍵部署(python項(xiàng)目)

    gitlab ci/cd+harbor+k8s實(shí)現(xiàn)一鍵部署(python項(xiàng)目)

    使用 kaniko 構(gòu)建 Docker 鏡像 如果倉(cāng)庫(kù)使用http

    2024年02月13日
    瀏覽(50)
  • 基于Jenkins實(shí)現(xiàn)的CI/CD方案

    基于Jenkins實(shí)現(xiàn)的CI/CD方案

    最近基于Jenkins的基座,搭建了一套適用于我們項(xiàng)目小組的持續(xù)集成環(huán)境。現(xiàn)在把流程整理分享出來(lái),希望可以給大家提供一些幫助和思路。 組件名稱 組件版本 作用 Harbor 2.7.3 鏡像倉(cāng)庫(kù) Jenkins 2.319.2 持續(xù)集成工具 Pipeline 2.6 Jenkins插件,編排流水線腳本 SSH Pipeline Steps 2.0.0 Jenki

    2024年02月22日
    瀏覽(23)
  • 前端自動(dòng)化部署,Devops,CI/CD

    前端自動(dòng)化部署,Devops,CI/CD

    提到 Jenkins,想到的第一個(gè)概念就是 CI/CD 在這之前應(yīng)該再了解一個(gè)概念。 DevOps? Development ?和? Operations ?的組合,是一種方法論,并不特指某種技術(shù)或者工具。DevOps 是一種重視? Dev ?開發(fā)人員和? Ops ?運(yùn)維人員之間溝通、協(xié)作的流程。通過自動(dòng)化的軟件交付,使軟件的構(gòu)建

    2024年02月10日
    瀏覽(57)
  • 【前端自動(dòng)化部署】,Devops,CI/CD

    【前端自動(dòng)化部署】,Devops,CI/CD

    提到 Jenkins ,想到的第一個(gè)概念就是 CI/CD 在這之前應(yīng)該再了解一個(gè)概念。 DevOps Development 和 Operations 的組合,是一種方法論,并不特指某種技術(shù)或者工具。 DevOps 是一種重視 Dev 開發(fā)人員和 Ops 運(yùn)維人員之間溝通、協(xié)作的流程。通過自動(dòng)化的軟件交付,使軟件的構(gòu)建,測(cè)試,發(fā)

    2024年02月10日
    瀏覽(56)
  • gitlab+jenkins+harbor實(shí)現(xiàn)CI/CD(2)——初級(jí)

    gitlab+jenkins+harbor實(shí)現(xiàn)CI/CD(2)——初級(jí)

    git安裝 jenkins主機(jī)上安裝docker-ce 配置倉(cāng)庫(kù)證書 測(cè)試 創(chuàng)建項(xiàng)目 創(chuàng)建一個(gè)freestyle project 在jenkins主機(jī)獲取密鑰 在gitlab上傳公鑰 在jenkins上傳私鑰 輸入測(cè)試命令后保存 點(diǎn)擊立即構(gòu)建 查看控制臺(tái)輸出 工作路徑 構(gòu)建觸發(fā)器,定時(shí)觸發(fā) 安裝插件 gitlab和 Cloudbee docker 配置gitlab 在網(wǎng)絡(luò)設(shè)

    2024年02月09日
    瀏覽(25)
  • 使用gitlab 自帶 CI/CD 構(gòu)建部署項(xiàng)目

    使用gitlab 自帶 CI/CD 構(gòu)建部署項(xiàng)目

    這里我用的是橋接模式 橋接模式方便局域網(wǎng)內(nèi)的小伙伴一起使用 如果沒有這個(gè)打算可跳過這步 編輯網(wǎng)絡(luò) vi /etc/sysconfig/network-scripts/ifcfg-你的網(wǎng)絡(luò)名稱 修改如下內(nèi)容 這里我有句話要講, 這些信息配置完成后出現(xiàn)\\\"網(wǎng)絡(luò)不可達(dá)\\\" 需要把 BOOTPROTO 改為 dhcp 詳情可參考 處理網(wǎng)絡(luò)不可達(dá)

    2024年02月12日
    瀏覽(27)
  • 在服務(wù)器部署Next.js、Node.js項(xiàng)目,并實(shí)現(xiàn)自動(dòng)部署(偽CI\CD)超詳細(xì)

    在服務(wù)器部署Next.js、Node.js項(xiàng)目,并實(shí)現(xiàn)自動(dòng)部署(偽CI\CD)超詳細(xì)

    目錄 一、引言 二、配置服務(wù)器 1. 遠(yuǎn)程連接服務(wù)器 · 用服務(wù)商提供的遠(yuǎn)程連接 · 用MotaXterm來(lái)遠(yuǎn)程連接 ?編輯?編輯?編輯 ?2. 登錄實(shí)例 · 如何獲取賬號(hào)和密碼 · 服務(wù)商遠(yuǎn)程連接方式: ?·?MotaXterm連接方式 三、項(xiàng)目準(zhǔn)備與測(cè)試 1. 安裝nodejs · 進(jìn)入安裝目錄 · 下載 · 解壓 ·

    2024年02月05日
    瀏覽(32)
  • Jenkins分布式實(shí)現(xiàn): 構(gòu)建彈性和可擴(kuò)展的CI/CD環(huán)境!

    Jenkins分布式實(shí)現(xiàn): 構(gòu)建彈性和可擴(kuò)展的CI/CD環(huán)境!

    Jenkins是一個(gè)流行的開源持續(xù)集成(Continuous Integration,CI)和持續(xù)交付(Continuous Delivery,CD)工具,它通過自動(dòng)化構(gòu)建、測(cè)試和部署過程,幫助開發(fā)團(tuán)隊(duì)更高效地交付軟件。Jenkins的分布式實(shí)現(xiàn)允許將任務(wù)分散到多個(gè)計(jì)算機(jī)上執(zhí)行,從而提高系統(tǒng)的彈性和可擴(kuò)展性。本文將深入

    2024年02月01日
    瀏覽(94)
  • [Docker實(shí)現(xiàn)測(cè)試部署CI/CD----自由風(fēng)格的CI操作[最終架構(gòu)](5)]

    [Docker實(shí)現(xiàn)測(cè)試部署CI/CD----自由風(fēng)格的CI操作[最終架構(gòu)](5)]

    ????????前面的架構(gòu)存在的問題是, 若有多個(gè)目標(biāo)服務(wù)器都需要使用該鏡像,那么每個(gè)目標(biāo)服務(wù) 器都需要在本地構(gòu)建鏡像,形成系統(tǒng)資源浪費(fèi)。 若能夠在 Jenkins 中將 鏡像構(gòu)建好并推送到 Harbor 鏡像中心 ,那么無(wú)論有多少目標(biāo)服務(wù)器需要該鏡像,都只需要從 Harbor 拉取即可

    2024年02月14日
    瀏覽(38)
  • Jenkins CI/CD

    Jenkins CI/CD

    1、 Jenkins CI/CD 流程圖 說明:這張圖稍微更形象一點(diǎn),上線之前先把代碼git到版本倉(cāng)庫(kù),然后通過Jenkins 如Java項(xiàng)目通過maven去構(gòu)建,這是在非容器之前,典型的自動(dòng)化的一個(gè)版本上線流程。那它有哪些問題呢? 如:它的測(cè)試環(huán)境,預(yù)生產(chǎn)環(huán)境,測(cè)試環(huán)境。會(huì)存在一定的兼容性

    2024年02月05日
    瀏覽(31)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包