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

【基于 GitLab 的 CI/CD 實(shí)踐】01、GitLab CI/CD 基礎(chǔ)概念

這篇具有很好參考價(jià)值的文章主要介紹了【基于 GitLab 的 CI/CD 實(shí)踐】01、GitLab CI/CD 基礎(chǔ)概念。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

目錄

一、為什么要做 CI/CD ?

1.1 背景-傳統(tǒng)的應(yīng)用開發(fā)發(fā)布模式

問題

1.2 持續(xù)集成與持續(xù)交付

持續(xù)集成(CI)

持續(xù)交付(CD)

持續(xù)部署(CD)

1.3 CI/CD 的價(jià)值體現(xiàn)

1.4 推薦常用的 CI/CD 工具

Jenkins

GitLab

二、GitLab CI/CD 功能簡介

2.1 GitLab 內(nèi)置持續(xù)集成功能

持續(xù)集成(CI)

連續(xù)交付(CD)

2.2 GitLab CI/CD 優(yōu)勢

2.3 GitLab CI/CD 特點(diǎn)

2.4 GitLab CI/CD 架構(gòu)

GitLab CI/CD

GitLab Runner

.gitlab-ci.yml

2.5 GitLab CI/CD 工作原理

三、GitLabCI VS Jenkins

3.1 差異點(diǎn)對比

分支的可配置性

定時(shí)執(zhí)行構(gòu)建

拉取請求支持

權(quán)限管理

存儲(chǔ)庫交互

插件管理

3.2 優(yōu)勢與劣勢

GitLabCI

Jenkins

3.3 實(shí)際應(yīng)用

四、安裝部署 GitLab 服務(wù)

4.1 rpm 方式

4.2 Docker 方式

4.3 Kubernetes 部署


一、為什么要做 CI/CD ?

1.1 背景-傳統(tǒng)的應(yīng)用開發(fā)發(fā)布模式

  • 開發(fā)團(tuán)隊(duì):在開發(fā)環(huán)境中完成軟件開發(fā),單元測試,測試通過,提交到代碼版本管理庫。
  • 運(yùn)維團(tuán)隊(duì):把應(yīng)用部署到測試環(huán)境,供QA團(tuán)隊(duì)測試,測試通過后部署生產(chǎn)環(huán)境。
  • QA 團(tuán)隊(duì):進(jìn)行測試,測試通過后通知部署人員發(fā)布到生產(chǎn)環(huán)境。

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github

問題

  • 錯(cuò)誤發(fā)現(xiàn)不及時(shí):很多錯(cuò)誤在項(xiàng)目的早期可能就存在,到最后集成的時(shí)候才發(fā)現(xiàn)問題。
  • 人工低級錯(cuò)誤發(fā)生:產(chǎn)品和服務(wù)交付中的關(guān)鍵活動(dòng)全都需要手動(dòng)操作。
  • 團(tuán)隊(duì)工作效率低:需要等待他人的工作完成后才能進(jìn)行自己的工作。
  • 開發(fā)運(yùn)維對立: 開發(fā)人員想要快速更新,運(yùn)維人員追求穩(wěn)定,各自的針對的方向不同。

經(jīng)過上述問題我們需要作出改變,如何改變?

1.2 持續(xù)集成與持續(xù)交付

????????軟件開發(fā)的連續(xù)方法基于自動(dòng)執(zhí)行腳本,以最大程度地減少在開發(fā)應(yīng)用程序時(shí)引入錯(cuò)誤的機(jī)會(huì)。從開發(fā)新代碼到部署新代碼,他們幾乎不需要人工干預(yù),甚至根本不需要干預(yù)。

????????它涉及到在每次小的迭代中就不斷地構(gòu)建,測試和部署代碼更改,從而減少了基于錯(cuò)誤或失敗的先前版本開發(fā)新代碼的機(jī)會(huì)。

????????此方法有三種主要方法,每種方法都將根據(jù)最適合您的策略的方式進(jìn)行應(yīng)用。

持續(xù)集成(CI)

????????持續(xù)合并開發(fā)人員正在開發(fā)編寫的所有代碼的一種做法。通常一天內(nèi)進(jìn)行多次合并和提交代碼,從存儲(chǔ)庫或生產(chǎn)環(huán)境中進(jìn)行構(gòu)建和自動(dòng)化測試,以確保沒有集成問題并及早發(fā)現(xiàn)任何問題。

????????開發(fā)人員提交代碼的時(shí)候一般先在本地測試驗(yàn)證,只要開發(fā)人員提交代碼到版本控制系統(tǒng)就會(huì)觸發(fā)一條提交流水線,對本次提交進(jìn)行驗(yàn)證。

持續(xù)交付(CD)

????????持續(xù)交付是超越持續(xù)集成的一步。不僅會(huì)在推送到代碼庫的每次代碼更改時(shí)都進(jìn)行構(gòu)建和測試,而且,作為附加步驟,即使部署是手動(dòng)觸發(fā)的,它也可以連續(xù)部署。此方法可確保自動(dòng)檢查代碼,但需要人工干預(yù)才能從策略上手動(dòng)觸發(fā)更改的部署。

持續(xù)部署(CD)

????????通??梢酝ㄟ^將更改自動(dòng)推送到發(fā)布系統(tǒng)來隨時(shí)將軟件發(fā)布到生產(chǎn)環(huán)境中。持續(xù)部署 會(huì)更進(jìn)一步,并自動(dòng)將更改推送到生產(chǎn)中。類似于持續(xù)交付,持續(xù)部署也是超越持續(xù)集成的又一步。不同之處在于,您無需將其手動(dòng)部署,而是將其設(shè)置為自動(dòng)部署。部署您的應(yīng)用程序完全不需要人工干預(yù)。?

1.3 CI/CD 的價(jià)值體現(xiàn)

  • 盡早反饋,盡早發(fā)現(xiàn)錯(cuò)誤。

  • 減少集成問題,每次發(fā)現(xiàn)問題當(dāng)時(shí)解決,避免問題堆積。

  • 每次更改都能成功發(fā)布,降低發(fā)布風(fēng)險(xiǎn)。

  • 更加頻繁的交付價(jià)值,客戶反饋。

1.4 推薦常用的 CI/CD 工具

Jenkins

????????專業(yè)的 CI 工具,可擴(kuò)展自動(dòng)化服務(wù)器、安裝配置簡單、豐富的插件庫、分布式架構(gòu)設(shè)計(jì)、支持所有的平臺(tái)、可視化的管理頁面。 ?

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github

GitLab

????????端到端 DevOps 工具,常用功能:代碼審查、問題跟蹤、動(dòng)態(tài)訂閱、易于擴(kuò)展、項(xiàng)目 wiki、多角色項(xiàng)目管理、項(xiàng)目代碼在線編譯預(yù)覽、CI 工具集成。

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github

  • 提交合并代碼集成:通過 git push 進(jìn)行操作或者在 GitLab Web 頁面操作。
  • 發(fā)布應(yīng)用到服務(wù)器: 獲取制品庫中的應(yīng)用,然后用 salt、ansible 發(fā)布部署到服務(wù)器。
  • 完全自動(dòng)化:提交代碼 -> 構(gòu)建部署 -> 發(fā)布

二、GitLab CI/CD 功能簡介

2.1 GitLab 內(nèi)置持續(xù)集成功能

持續(xù)集成(CI)

  • 集成團(tuán)隊(duì)中每個(gè)開發(fā)人員提交的代碼到代碼存儲(chǔ)庫中。

  • 開發(fā)人員在 Merge 或者 Pull 請求中合并拉取新代碼。

  • 在提交或者合并更改到代碼存儲(chǔ)庫之前,會(huì)觸發(fā)了構(gòu)建,測試和新代碼驗(yàn)證的管道。

  • CI 可幫助您在開發(fā)周期的早期發(fā)現(xiàn)并減少錯(cuò)誤。

連續(xù)交付(CD)

  • 可通過結(jié)構(gòu)化的部署管道確保將經(jīng)過 CI 驗(yàn)證的代碼交付給您的應(yīng)用程序。

  • CD 可以將經(jīng)過驗(yàn)證的代碼更快地移至您的應(yīng)用程序。

????????CI/CD 一起可以加快團(tuán)隊(duì)為客戶和利益相關(guān)者交付成果的速度。CI 和 CD 必須無縫協(xié)作,以使您的團(tuán)隊(duì)快速有效地進(jìn)行構(gòu)建,并且對于確保完全優(yōu)化的開發(fā)實(shí)踐至關(guān)重要。

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github

2.2 GitLab CI/CD 優(yōu)勢

  • 開源:CI/CD 是開源 GitLab 社區(qū)版和專有 GitLab 企業(yè)版的一部分。

  • 易于學(xué)習(xí):具有詳細(xì)的入門文檔。

  • 無縫集成:GitLab CI/CD 是 GitLab 的一部分,支持從計(jì)劃到部署,具有出色的用戶體驗(yàn)。

  • 可擴(kuò)展:測試可以在單獨(dú)的計(jì)算機(jī)上分布式運(yùn)行,可以根據(jù)需要添加任意數(shù)量的計(jì)算機(jī)。

  • 更快的結(jié)果:每個(gè)構(gòu)建可以拆分為多個(gè)作業(yè),這些作業(yè)可以在多臺(tái)計(jì)算機(jī)上并行運(yùn)行。

  • 針對交付進(jìn)行了優(yōu)化:多個(gè)階段,手動(dòng)部署, 環(huán)境和變量。

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github

2.3 GitLab CI/CD 特點(diǎn)

  • 多平臺(tái):Unix,Windows,macOS 和任何其他支持 Go 的平臺(tái)上執(zhí)行構(gòu)建。

  • 多語言:構(gòu)建腳本是命令行驅(qū)動(dòng)的,并且可以與 Java,PHP,Ruby,C 和任何其他語言一起使用。

  • 穩(wěn)定構(gòu)建:構(gòu)建在與 GitLab 不同的機(jī)器上運(yùn)行。

  • 并行構(gòu)建:GitLab CI/CD 在多臺(tái)機(jī)器上拆分構(gòu)建,以實(shí)現(xiàn)快速執(zhí)行。

  • 實(shí)時(shí)日志記錄:合并請求中的鏈接將您帶到動(dòng)態(tài)更新的當(dāng)前構(gòu)建日志。

  • 靈活的管道:您可以在每個(gè)階段定義多個(gè)并行作業(yè),并且可以 觸發(fā)其他構(gòu)建。

  • 版本管道: 一個(gè) .gitlab-ci.yml 文件包含您的測試,整個(gè)過程的步驟,使每個(gè)人都能貢獻(xiàn)更改,并確保每個(gè)分支獲得所需的管道。

  • 自動(dòng)縮放:您可以自動(dòng)縮放構(gòu)建機(jī)器,以確保立即處理您的構(gòu)建并將成本降至最低。

  • 構(gòu)建工件:您可以將二進(jìn)制文件和其他構(gòu)建工件上載到 GitLab 并瀏覽和下載它們。

  • Docker 支持:可以使用自定義 Docker 鏡像, 作為測試的一部分啟動(dòng) 服務(wù), 構(gòu)建新的Docker 鏡像,甚至可以在 Kubernetes 上運(yùn)行。

  • 容器注冊表: 內(nèi)置的容器注冊表,用于存儲(chǔ),共享和使用容器鏡像。

  • 受保護(hù)的變量: 在部署期間使用受每個(gè)環(huán)境保護(hù)的變量安全地存儲(chǔ)和使用機(jī)密。

  • 環(huán)境: 定義多個(gè)環(huán)境。

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github

2.4 GitLab CI/CD 架構(gòu)

GitLab CI/CD

????????GitLab 的一部分,GitLab 是一個(gè) Web 應(yīng)用程序,具有將其狀態(tài)存儲(chǔ)在數(shù)據(jù)庫中的 API。 除了 GitLab 的所有功能之外,它還管理項(xiàng)目/構(gòu)建并提供一個(gè)不錯(cuò)的用戶界面。

GitLab Runner

????????是一個(gè)處理構(gòu)建的應(yīng)用程序。 它可以單獨(dú)部署,并通過?API 與 GitLab CI/CD一起使用。

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github

.gitlab-ci.yml

定義流水線作業(yè)運(yùn)行,位于應(yīng)用項(xiàng)目根目錄下。

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github????????為了運(yùn)行測試,我們后面至少需要一個(gè) GitLab 實(shí)例、一個(gè) GitLab Runner、一個(gè) gitlab-ci 文件。

2.5 GitLab CI/CD 工作原理

  • 將代碼托管到 Git 存儲(chǔ)庫。

  • 在項(xiàng)目根目錄創(chuàng)建 ci 文件 .gitlab-ci.yml ,在文件中指定構(gòu)建,測試和部署腳本。

  • GitLab 將檢測到它并使用名為 GitLab Runner 的工具運(yùn)行腳本。

  • 腳本被分組為作業(yè),它們共同組成了一個(gè)管道。

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github

管道狀態(tài)也會(huì)由 GitLab 顯示: ?

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github最后,如果出現(xiàn)任何問題,可以輕松地回滾所有更改: ?

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github

三、GitLabCI VS Jenkins

? Jenkins 是一個(gè)廣泛用于持續(xù)集成的可視化 web 自動(dòng)化工具,jenkins 可以很好的支持各種語言的項(xiàng)目構(gòu)建,也完全兼容?ant、maven、gradle等多種第三方構(gòu)建工具,同時(shí)跟?svn、git能無縫集成,也支持直接與知名源代碼托管網(wǎng)站,比如?github、bitbucket直接集成,而且插件眾多,在這么多年的技術(shù)積累之后,在國內(nèi)大部分公司都有使用?Jenkins

? gitlab-CI是?gitlab8.0之后自帶的一個(gè)持續(xù)集成系統(tǒng),中心思想是當(dāng)每一次?push到?gitlab的時(shí)候,都會(huì)觸發(fā)一次腳本執(zhí)行,然后腳本的內(nèi)容包括了測試,編譯,部署等一系列自定義的內(nèi)容。

? gitlab-CI的腳本執(zhí)行,需要自定義安裝對應(yīng)?gitlab-runner來執(zhí)行,代碼?push之后,webhook檢測到代碼變化,就會(huì)觸發(fā)?gitlab-CI,分配到各個(gè)?Runner來運(yùn)行相應(yīng)的腳本?script。這些腳本有的是測試項(xiàng)目用的,有的是部署用的。

3.1 差異點(diǎn)對比

分支的可配置性

  • 使用 GitLabCI,新創(chuàng)建的分支無需任何進(jìn)一步配置即可立即使用 CI 管道中的已定義作業(yè)。

  • Jenkins 2 基于 gitlab 的多分支流水線可以實(shí)現(xiàn)。相對配置來說 gitlab 更加方便一些。

定時(shí)執(zhí)行構(gòu)建

有時(shí),根據(jù)時(shí)間觸發(fā)作業(yè)或整個(gè)管道會(huì)有所幫助。例如,常規(guī)的夜間定時(shí)構(gòu)建。

  • 使用 Jenkins 2 可以立即使用??梢栽趹?yīng)執(zhí)行作業(yè)或管道的那一刻以 cron 式語法定義。

  • GitLab CI 沒有此功能。但是,可以通過一種變通辦法來實(shí)現(xiàn):通過 WebAPI 使用同一臺(tái)或另一臺(tái)服務(wù)器上的 cronjob 觸發(fā)作業(yè)和管道。

????????盡管使用 GitLab CI 無法做到這一點(diǎn),其實(shí)如果配置了提交代碼即觸發(fā)流水線,那么最后一次提交的構(gòu)建在什么時(shí)候沒有什么不同,反而減少未提交代碼的定時(shí)構(gòu)建資源浪費(fèi)。

拉取請求支持

????????如果很好地集成了存儲(chǔ)庫管理器和 CI / CD 平臺(tái),您可以看到請求的當(dāng)前構(gòu)建狀態(tài)。使用這種功能,可以避免將代碼合并到不起作用或無法正確構(gòu)建的主分支中。

  • Jenkins 沒有與源代碼管理系統(tǒng)進(jìn)一步集成,需要管理員自行寫代碼或者插件實(shí)現(xiàn)。

  • GitLab 與其 CI 平臺(tái)緊密集成,可以方便查看每個(gè)打開和關(guān)閉拉動(dòng)請求的運(yùn)行和完成管道。

權(quán)限管理

????????從存儲(chǔ)庫管理器繼承的權(quán)限管理對于不想為每個(gè)服務(wù)分別設(shè)置每個(gè)用戶的權(quán)限的大型開發(fā)人員或組織團(tuán)體很有用。大多數(shù)情況下,兩種情況下的權(quán)限都是相同的,因此默認(rèn)情況下應(yīng)將它們配置在一個(gè)位置。

  • 由于 GitLab 與 GitLabCI 的深度整合,權(quán)限可以統(tǒng)一管理。

  • 由于 Jenkins 2 沒有內(nèi)置的存儲(chǔ)庫管理器,因此它無法直接在存儲(chǔ)庫管理器和 CI / CD 平臺(tái)之間合并權(quán)限。

存儲(chǔ)庫交互

  • GitLab CI 是 Git 存儲(chǔ)庫管理器 GitLab 的固定組件,因此在 CI / CD 流程和存儲(chǔ)庫功能之間提供了良好的交互。

  • Jenkins 2 與存儲(chǔ)庫管理器都是松散耦合的,因此在選擇版本控制系統(tǒng)時(shí)它非常靈活。此外,就像其前身一樣,Jenkins 2 強(qiáng)調(diào)了對插件的支持,以進(jìn)一步擴(kuò)展或改善軟件的現(xiàn)有功能。

插件管理

  • 擴(kuò)展 Jenkins 的本機(jī)功能是通過插件完成的。插件的維護(hù),保護(hù)和升級成本很高。

  • GitLab 是開放式的,任何人都可以直接向代碼庫貢獻(xiàn)更改,一旦合并,它將自動(dòng)測試并維護(hù)每個(gè)更改。

3.2 優(yōu)勢與劣勢

GitLabCI

  • 輕量級,不需要復(fù)雜的安裝手段。

  • 配置簡單,與?gitlab可直接適配。

  • 實(shí)時(shí)構(gòu)建日志十分清晰,UI交互體驗(yàn)很好

  • 使用 YAML 進(jìn)行配置,任何人都可以很方便的使用。

  • 沒有統(tǒng)一的管理界面,無法統(tǒng)籌管理所有項(xiàng)目

  • 配置依賴于代碼倉庫,耦合度沒有?Jenkins

Jenkins

  • 編譯服務(wù)和代碼倉庫分離,耦合度低

  • 插件豐富,支持語言眾多。

  • 有統(tǒng)一的?web管理界面。

  • 插件以及自身安裝較為復(fù)雜。

  • 體量較大,不是很適合小型團(tuán)隊(duì)。

3.3 實(shí)際應(yīng)用

  • GitLabCI 有助于 DevOps 人員,例如敏捷開發(fā)中,開發(fā)與運(yùn)維是同一個(gè)人,最便捷的開發(fā)方式。(小團(tuán)隊(duì))

  • JenkinsCI 適合在多角色團(tuán)隊(duì)中,職責(zé)分明、配置與代碼分離、插件豐富。

四、安裝部署 GitLab 服務(wù)

GitLab 官方安裝方法:GitLab下載安裝_GitLab最新中文免費(fèi)版下載安裝-極狐GitLab

4.1 rpm 方式

清華源地址:Index of /gitlab-ce/yum/el7/ | 清華大學(xué)開源軟件鏡像站 | Tsinghua Open Source Mirror

gitlab 創(chuàng)建cicd,基于 GitLab 的 CI/CD 實(shí)踐,gitlab,ci/cd,github

# 下載安裝包
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-15.3.3-ce.0.el7.x86_64.rpm

# 安裝
yum install -y curl policycoreutils-python openssh-server perl
rpm -ivh gitlab-ce-15.3.3-ce.0.el7.x86_64.rpm

# 編輯站點(diǎn)地址(服務(wù)器節(jié)點(diǎn)的 ip)
vim /etc/gitlab/gitlab.rb
external_url 'http://192.168.170.133' 

# 重載配置(過程會(huì)比較久,耐心等待)
gitlab-ctl reconfigure  

# GitLab 服務(wù)控制
gitlab-ctl start      # 啟動(dòng)服務(wù)   
gitlab-ctl status     # 查看狀態(tài)
gitlab-ctl stop       # 停止服務(wù)

注:此方式安裝的 GitLab 服務(wù)是開機(jī)自啟的服務(wù)。?

4.2 Docker 方式

參考官方文檔:極狐GitLab Docker 鏡像 | 極狐GitLab?

4.3 Kubernetes 部署

參考官方文檔:使用 Helm 安裝極狐GitLab | 極狐GitLab

下一篇文章:【基于 GitLab 的 CI/CD 實(shí)踐】02、gitlab-runner 實(shí)踐_Stars.Sky的博客-CSDN博客?文章來源地址http://www.zghlxwxcb.cn/news/detail-590936.html

到了這里,關(guān)于【基于 GitLab 的 CI/CD 實(shí)踐】01、GitLab CI/CD 基礎(chǔ)概念的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • gitlab CI/CD 安裝 gitlab runner

    gitlab CI/CD 安裝 gitlab runner

    一、為什么需要安裝gitlab runner ? 極狐GitLab Runner 是在流水線中運(yùn)行作業(yè)的應(yīng)用,與極狐GitLab CI/CD 配合運(yùn)作。 說白了就是你部署的一個(gè)agent。 二、如何安裝? 1.介紹通過helm部署github runner 2.helm添加倉庫 helm repo add gitlab https://charts.gitlab.io 3.拉取chars helm pull gitlab/gitlab-runner -- 拉

    2024年02月14日
    瀏覽(33)
  • Gitlab CI/CD概述

    Gitlab CI/CD概述

    CI/CD 是一種持續(xù)開發(fā)軟件的方法,可以不斷的進(jìn)行構(gòu)建、測試和部署代碼迭代更改。這種迭代有助于減少基于錯(cuò)誤或失敗的版本進(jìn)行開發(fā)新代碼的可能性。使用這種方法,從新代碼開發(fā)到部署,可以減少人工干預(yù)甚至不用干預(yù)。 達(dá)到持續(xù)的方法主要是: 持續(xù)集成 , 持續(xù)交付

    2024年02月12日
    瀏覽(22)
  • docker部署gitlab CI/CD (一)第一篇:部署gitlab及漢化

    docker部署gitlab CI/CD (一)第一篇:部署gitlab及漢化

    網(wǎng)上很多類似教程,但多少有點(diǎn)夾帶私貨,有的竟然拉取的第三方鏡像,而且很多都要修改配置文件,完全不知道是為什么,于是結(jié)合其他人的博客和官方文檔, 知其然也要知其所以然,于2023年4月17日寫下這篇。 官方文檔: https://docs.gitlab.com/ee/install/docker.html 主要參考博客

    2023年04月17日
    瀏覽(33)
  • 基于SNAT+DNAT發(fā)布內(nèi)網(wǎng)K8S及Jenkins+gitlab+Harbor模擬CI/CD的綜合項(xiàng)目

    基于SNAT+DNAT發(fā)布內(nèi)網(wǎng)K8S及Jenkins+gitlab+Harbor模擬CI/CD的綜合項(xiàng)目

    目錄 項(xiàng)目名稱 項(xiàng)目架構(gòu)圖 項(xiàng)目環(huán)境 項(xiàng)目概述 項(xiàng)目準(zhǔn)備 項(xiàng)目步驟 一、修改每臺(tái)主機(jī)的ip地址,同時(shí)設(shè)置永久關(guān)閉防火墻和selinux,修改好主機(jī)名,在firewalld服務(wù)器上開啟路由功能并配置snat策略。 1. 在firewalld服務(wù)器上配置ip地址、設(shè)置永久關(guān)閉防火墻和selinux,并修改好主機(jī)名

    2024年02月09日
    瀏覽(54)
  • 純手工搭建 GitaLab與Gitlab-CI/CD--附 gitlab-ci.yml示例

    純手工搭建 GitaLab與Gitlab-CI/CD--附 gitlab-ci.yml示例

    作者:javastarboy 背景:前幾年(2018 年前后)的 jenkins+docker+k8s 的CI/CD 在工作之中受益不少。提升了不少工作效率。而隨著這幾年的使用發(fā)現(xiàn),目前 gitlab-CI/CD 在持續(xù)集成部署中更加方便、高效。 尤其是在測試環(huán)節(jié)中,研發(fā)無需編寫復(fù)雜的 jenkins 腳本,只要提交代碼,即可自動(dòng)

    2023年04月08日
    瀏覽(24)
  • Gitlab CI/CD入門(一)Python項(xiàng)目的CI演示

    Gitlab CI/CD入門(一)Python項(xiàng)目的CI演示

    ??本文將介紹CI/CD的基本概念,以及如何使用Gitlab來實(shí)現(xiàn)CI/CD。 ??本文介紹的CI/CD項(xiàng)目為個(gè)人Gitlab項(xiàng)目:gitlab_ci_test,訪問網(wǎng)址為:https://gitlab.com/jclian91/gitlab_ci_test。 CI/CD的含義 ??在現(xiàn)代軟件工程中,CI即 持續(xù)集成(Continuous integration) ,CD有兩重含義,即 持續(xù)交付(Co

    2024年02月10日
    瀏覽(48)
  • DevOps系列文章之 GitLab CI/CD

    DevOps系列文章之 GitLab CI/CD

    由于目前公司使用的gitlab,大部分項(xiàng)目使用的CICD是gitlab的CICD,少部分用的是jenkins,使用了gitlab-ci一段時(shí)間后感覺還不錯(cuò),因此總結(jié)一下 介紹gitlab的CICD之前,可以先了解CICD是什么 我們的開發(fā)模式經(jīng)歷了如下的轉(zhuǎn)變:瀑布模型-敏捷開發(fā)→DevOps(Development、Operations的組合詞,是

    2024年01月22日
    瀏覽(62)
  • Gitlab CI/CD: rules和only

    Gitlab CI/CD: rules和only

    rules 和 only 都是在 GitLab CI/CD 配置中用于控制作業(yè)(job)何時(shí)執(zhí)行的,但它們之間有一些不同之處: only : only 用于定義在特定情況下觸發(fā)作業(yè)的條件。你可以指定一系列觸發(fā)條件,只有當(dāng)至少一個(gè)條件匹配時(shí),作業(yè)才會(huì)被觸發(fā)執(zhí)行。 only 通常用于根據(jù)分

    2024年02月03日
    瀏覽(36)
  • 使用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)
  • GitLab Runner 實(shí)現(xiàn)項(xiàng)目 CI/CD 發(fā)布

    GitLab Runner 實(shí)現(xiàn)項(xiàng)目 CI/CD 發(fā)布

    Gitlab實(shí)現(xiàn)CICD的方式有很多,比如通過Jenkins,通過Gitlab Runner等,今天主要介紹后者。Gitlab在安裝的時(shí)候,就默認(rèn)包含了Gitlab CI的能力,但是該能力只是用于協(xié)調(diào)作業(yè),并不能真的去執(zhí)行作業(yè),因此需要搭配Gitlab Runner來作為執(zhí)行器實(shí)現(xiàn)具體的CICD工作。Gitlab Runner可以被安裝在任

    2024年01月17日
    瀏覽(33)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包