<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          在 K8s 中快速部署使用 GitLab 并構(gòu)建 DevOps 項(xiàng)目

          共 10304字,需瀏覽 21分鐘

           ·

          2022-02-13 05:35

          新年伊始,“極狐(GitLab) 聯(lián)合青云(QingCloud 公有云服務(wù)和 KubeSphere 容器平臺(tái))、上海云軸(ZStack Cloud 云平臺(tái)和 ZStack Cube 超融合一體機(jī))、寶德計(jì)算、上海恒岳等國(guó)內(nèi)多家知名云廠商和服務(wù)器廠商,首發(fā) GitNative 系列產(chǎn)品解決方案,針對(duì)不同部署環(huán)境和應(yīng)用場(chǎng)景,推出支持公有云、私有云、本地?cái)?shù)據(jù)中心部署的 ‘GitNative 一體化 DevOps 平臺(tái)’ 和 ‘GitNative CI/CD 流水線引擎’ 解決方案。”

          在社區(qū)看到上面 ??這條新聞 的時(shí)候有種 “虎軀一震” 的感覺,確實(shí)很高興能看到國(guó)內(nèi)的云社區(qū)、云廠商能在 DevOps 領(lǐng)域有這樣接地氣的商業(yè)產(chǎn)品合作,相信更多這樣跨界合作產(chǎn)品的出現(xiàn)也會(huì)推動(dòng)我們國(guó)內(nèi)的 DevOps 社區(qū)及產(chǎn)品有進(jìn)一步發(fā)展。那么對(duì)于我們開源社區(qū)的小伙伴而言,通過 GitLab 社區(qū)版以及 KubeSphere 平臺(tái)提供的 DevOps 能力,其實(shí)也可以自己嘗試搭建一套類似的 DevOps 平臺(tái)來一起感受一下 Kubernetes 時(shí)代下 GitOps 體系的魅力。

          所以我們本次分享將和大家一起動(dòng)手來實(shí)踐一下在 KubeSphere 部署 GitLab CE(Community Edition 社區(qū)版)并構(gòu)建與之聯(lián)動(dòng)的 DevOps 項(xiàng)目。

          前提條件

          安裝 KubeSphere

          安裝 KubeSphere 有兩種方法。一是在 Linux 上直接安裝,可以參考文檔:在 Linux 安裝 KubeSphere[1];二是在已有 Kubernetes 中安裝,可以參考文檔:在 Kubernetes 安裝 KubeSphere[2]

          在 KubeSphere 中啟用 DevOps 套件

          在 KubeSphere 中啟用 DevOps 套件可以參考文檔:啟用可插拔組建 · KubeSphere DevOps 系統(tǒng)[3]。安裝完成后可以在「平臺(tái)管理」頁(yè)面的「系統(tǒng)組建」部分看到 Jenkins 頭像圖標(biāo)。

          基于 Jenkins[4] 的 KubeSphere DevOps 系統(tǒng)是專為 K8s 中的 CI/CD 工作流設(shè)計(jì)的,它提供了一站式的解決方案,幫助開發(fā)和運(yùn)維團(tuán)隊(duì)用非常簡(jiǎn)單的方式構(gòu)建、測(cè)試和發(fā)布應(yīng)用到 K8s。它還具有插件管理、Binary-to-Image (B2I)[5]Source-to-Image (S2I)[6]、代碼依賴緩存、代碼質(zhì)量分析等功能。文本只會(huì)涉及 KubeSphere DevOps 其中關(guān)于流水線使用的部分。

          安裝 GitLab CE

          我們先這次的演練創(chuàng)建一個(gè)名為 devops的企業(yè)空間,同時(shí)創(chuàng)建一個(gè)名為 gitlab的項(xiàng)目供 GitLab CE 部署使用。

          通過應(yīng)用倉(cāng)庫(kù)部署 GitLab 應(yīng)用

          首先我們還是要現(xiàn)在 devops企業(yè)空間中添加 GitLab 的官方 Helm Chart 倉(cāng)庫(kù),推薦用這種自管理的方式來保障倉(cāng)庫(kù)內(nèi)容是得到及時(shí)同步的。通過「應(yīng)用管理」下面的「應(yīng)用倉(cāng)庫(kù)」來添加如下的 GitLab 倉(cāng)庫(kù)(倉(cāng)庫(kù) URL:https://charts.gitlab.io/)。

          接下來進(jìn)入先前創(chuàng)建的gitlab項(xiàng)目,從「應(yīng)用負(fù)載」下面的「應(yīng)用」頁(yè)面創(chuàng)建 GitLab 應(yīng)用:選擇「從應(yīng)用模版」創(chuàng)建即可得到如下界面,由于倉(cāng)庫(kù)內(nèi)可安裝的 Helm Chart 較多,注意選擇紅框指示的這個(gè)應(yīng)用(撰稿時(shí) Chart 最新版為 5.7.0,對(duì)于 GitLab 版本為 14.7.0)。

          下面這一步十分重要,需要配置 Helm Chart 部署應(yīng)用的參數(shù)。由于 GitLab 默認(rèn)的可配置項(xiàng)非常多(有上千行),因此我們這次只挑選 可保障基礎(chǔ)業(yè)務(wù)使用的最小功能集 的相關(guān)參數(shù)進(jìn)行改寫,關(guān)于每個(gè)參數(shù)具體代表的含義請(qǐng)參見參數(shù)項(xiàng)上一行的注釋(并留意【注意】部分)。其它配置項(xiàng)請(qǐng)大家參見 極狐 GitLab Helm Chart 快速開始指南[7] 及其中的 完整屬性列表[8]

          global:
          ??##?確保使用的版本是?Community?Edition
          ??edition:?ce

          ??##?全局 Host 配置:https://docs.gitlab.cn/charts/charts/globals.html#host-%E9%85%8D%E7%BD%AE
          ??#【注意】這里我們只綁定?GitLab?主體服務(wù)的域名,其它都可以使用默認(rèn)值(不影響演練使用)
          ??hosts:
          ????#【注意】這個(gè)基礎(chǔ)域名需要是?“部署?GitLab?的集群”?內(nèi)可以訪問的域名,否則各組件互聯(lián)可能存在問題
          ????domain:?example.com
          ????#【注意】我們演練環(huán)境為了部署方便不啟用?HTTPS,否則需要提供和填寫的基礎(chǔ)域名對(duì)應(yīng)的證書
          ????https:?false
          ????gitlab:
          ??????name:?gitlab.example.com

          ??##?全局 Ingress 配置:https://docs.gitlab.cn/charts/charts/globals.html#ingress-%E9%85%8D%E7%BD%AE
          ??ingress:
          ????#【注意】我們由于全面關(guān)閉?HTTPS,所以這里也需要關(guān)閉?GitLab?自帶的證書生成器
          ????configureCertmanager:?false
          ????#【注意】由于默認(rèn)是使用自帶?Nginx,即使用?"gitlab-nginx",需要改為?KubeSphere?網(wǎng)關(guān)適配的值
          ????class:?nginx
          ????#【注意】默認(rèn)是?true,需要強(qiáng)制關(guān)閉?HTTPS,和其它配置保持一致
          ????tls:
          ??????enabled:?false

          ##?自帶的 cert-manager 配置:https://github.com/jetstack/cert-manager
          #【注意】這里強(qiáng)制選擇不安裝?cert-manager
          certmanager:
          ??installCRDs:?false
          ??install:?false

          ##?自帶的 Nginx Ingress 配置:https://docs.gitlab.cn/charts/charts/nginx/
          #【注意】由于演練會(huì)直接使用?KubeSphere?項(xiàng)目/集群網(wǎng)關(guān),這里直接關(guān)閉此項(xiàng)的安裝配置
          nginx-ingress:
          ??enabled:?false

          ##?自帶的工件倉(cāng)庫(kù)組件:https://docs.gitlab.cn/charts/charts/registry/
          #【注意】由于不開啟?HTTPS,使用各類工件倉(cāng)庫(kù)會(huì)有問題,這里建議就直接關(guān)閉此項(xiàng)安裝配置
          registry:
          ??enabled:?false

          ##?自帶的 MinIO 配置:https://docs.gitlab.cn/charts/charts/minio/
          #【注意】由于可以后續(xù)自行在?KubeSphere?中開啟應(yīng)用路由,這里建議直接關(guān)閉網(wǎng)關(guān)路由配置
          minio:
          ??ingress:
          ????enabled:?false

          ##?自帶的 GitLab Runner 配置:https://docs.gitlab.cn/charts/charts/gitlab/gitlab-runner/
          #【注意】由于演練環(huán)境我們直接接入?KubeSphere?DevOps?做?CI/CD,這里建議就先不安裝?Runner
          gitlab-runner:
          ??install:?false

          雖然已經(jīng)是最小功能集部署,但由于部署的服務(wù)及其資源開銷較多,部署過程還是比較長(zhǎng)的。部署完成后可以在 gitlab應(yīng)用的「工作負(fù)載」部分查看到所有負(fù)載都在運(yùn)行中的狀態(tài)。

          此時(shí)gitlab應(yīng)用狀態(tài)處于正在創(chuàng)建,這是由于應(yīng)用部署超時(shí)導(dǎo)致的,只要所有工作負(fù)載可以正常進(jìn)入運(yùn)行狀態(tài),是并不影響應(yīng)用正常使用的。

          由于部署時(shí)間很長(zhǎng),容易導(dǎo)致 MinIO 組件的舒適化 Bucket 任務(wù)失敗,建議檢查「應(yīng)用負(fù)載」下的gitlab-minio-create-buckets-1任務(wù),如果失敗可以通過詳情頁(yè)左側(cè)「更多操作」來「重新運(yùn)行」,最終得到已完成(1/1)的狀態(tài)即可認(rèn)為成功。

          確認(rèn)所有工作負(fù)載運(yùn)行后,如之前您已經(jīng)配置過集群或項(xiàng)目網(wǎng)關(guān)并使能過gitlab.example.com的域名解析,那么您就可以直接訪問該域名來打開 GitLab 的站點(diǎn)頁(yè)面。

          關(guān)于如何在 KubeSphere 中設(shè)置集群或項(xiàng)目網(wǎng)關(guān),您可以參考我們之前的 技術(shù)博客[9]同時(shí)請(qǐng)確保您的網(wǎng)關(guān)是可以直接使用 HTTP 標(biāo)準(zhǔn)的**80**端口來提供訪問能力的!

          在 GitLab 中創(chuàng)建一個(gè)示例項(xiàng)目

          首先讓我們來登陸 GitLab。GitLab 的初始密碼被作為 Secret 保存,我們可以回到項(xiàng)目首頁(yè),在「配置」下的「保密字典」中搜索initial可以找到 gitlab-initial-root-password的條目。點(diǎn)擊該字典條目,并在「數(shù)據(jù)」區(qū)塊中點(diǎn)擊最右側(cè)的眼睛圖標(biāo)來展示password數(shù)據(jù)項(xiàng)的內(nèi)容。

          復(fù)制該密碼,并使用root作為用戶名,即可登陸 GitLab 得到如下圖所示的界面。

          點(diǎn)擊「New Project」按鈕進(jìn)入創(chuàng)建項(xiàng)目的頁(yè)面,通過「Create from Template」我們可以來創(chuàng)建一個(gè)示例項(xiàng)目用于后面的流水線演練。

          讓我們選擇NodeJS Express這個(gè)項(xiàng)目模版來創(chuàng)建應(yīng)用,所有模版都可以通過 Preview 按鈕來預(yù)覽其中的內(nèi)容,使用模版后得到如下創(chuàng)建項(xiàng)目界面。

          填入您偏好的項(xiàng)目名稱,并在項(xiàng)目可見度這里選擇默認(rèn)的Private來創(chuàng)建私有項(xiàng)目,以便于后續(xù)演示如果訪問私有項(xiàng)目。完成導(dǎo)入后可以得到如下的項(xiàng)目頁(yè)面。

          關(guān)閉 Auto DevOps 并創(chuàng)建 Jenkinsfile

          由于我們后續(xù)要使用 KubeSphere DevOps,而 GitLab 默認(rèn)開啟了 Auto DevOps 功能(會(huì)為無 CI 配置的項(xiàng)目自動(dòng)提供流水線支持),為了避免混亂,我們先暫時(shí)關(guān)閉 Auto DevOps。

          找到項(xiàng)目頁(yè)面中間部位的文件及功能快捷入口區(qū)域,點(diǎn)擊「Auto DevOps enabled」按鈕塊,進(jìn)入配置頁(yè)面后取消Default to Auto DevOps pipeline的勾選并「Save changes」,即可完成 Auto DevOps 功能的關(guān)閉。

          接下來,我們還需要為這個(gè)項(xiàng)目創(chuàng)建一個(gè) Jenkinsfile 用于后續(xù) KubeSphere DevOps 流水線的構(gòu)建。在master分支下直接創(chuàng)建一個(gè)名為Jenkinsfile的文件,填入以下內(nèi)容即可。

          pipeline?{
          ????agent?any
          ????stages?{
          ????????stage('Example')?{
          ????????????steps?{
          ????????????????echo?'Hello?World'
          ????????????}
          ????????}
          ????}
          ????post?{
          ????????always?{
          ????????????echo?'I?will?always?say?Hello?again!'
          ????????}
          ????}
          }

          使用 KubeSphere DevOps 為 GitLab 提供流水線

          我們首先在devops的企業(yè)空間中創(chuàng)建一個(gè)名為demo的 DevOps 項(xiàng)目,用于后續(xù)演練如何為 GitLab 創(chuàng)建流水線。

          將 GitLab 與 KubeSphere Jenkins 進(jìn)行綁定

          由于 KubeSphere Jenkins 默認(rèn)綁定的 GitLab 服務(wù)是官方的gitlab.com,因此在創(chuàng)建流水線前需要先重新綁定到我們創(chuàng)建的私有 GitLab 服務(wù)上。

          首先,我們需要打開 KubeSphere Jenkins 的頁(yè)面,為了操作方便,我們直接為kubesphere-devops-system命名空間下的devops-jenkins開放 NodePort。

          使用 KubeSphere 賬號(hào)登陸 Jenkins(如果登陸失敗可能是賬號(hào)同步問題,可以修改一次密碼再次嘗試)。通過「Manage Jenkins ?? Configure System」進(jìn)入系統(tǒng)配置頁(yè)面,找到 GitLab Servers配置區(qū),點(diǎn)擊「Add GitLab Server」開始添加我們的 GitLab 服務(wù)。

          如上圖所示,需要填寫或編輯的配置項(xiàng)一共有三項(xiàng):

          • Server URL:這里填入我們剛剛部署完成的 GitLab 服務(wù)的訪問方式(如果是域名訪問,一定需要是 Jenkins 也可達(dá)的域名)
          • Crendentials:這里選擇或創(chuàng)建一個(gè) Jenkins 的的憑證項(xiàng),該憑證需要是 GitLab 某個(gè)用戶的 Personal Access Token(下面我們會(huì)繼續(xù)說明如何創(chuàng)建)
          • Web Hook:這個(gè)一定要勾選 Manage Web Hooks這項(xiàng),用于我們之后同步 Jenkins Pipeline 的狀態(tài)到我們的 GitLab 服務(wù)中

          創(chuàng)建 GitLab Personal Access Token 的 Jenkins Crendential

          首先,我們回到 GitLab 中,可以直接通過?/-/profile/personal_access_tokens(例如本文可使用 http://gitlab.example.com:30433/-/profile/personal_access_tokens??來訪問 Personal Access Tokens 的創(chuàng)建頁(yè)面。按 Jenkins 的要求,我們創(chuàng)建一個(gè)名為 jenkins且具備apiread_repositorywrite_repository 權(quán)限的令牌,復(fù)制令牌字符串備用。

          然后我們回到 Jenkins 首頁(yè),從「Manage Jenkins ?? Manage Crendentials ?? Stores scoped to Jenkins ?? Jenkins ?? Global crendentials (unrestricted)」進(jìn)入憑證創(chuàng)建頁(yè)面。

          點(diǎn)擊左側(cè)面板的「Add Credentials」即可開始創(chuàng)建憑證,填寫完成后點(diǎn)擊 Ok 保存即可完成憑證創(chuàng)建:

          • Kind選擇GitLab Personal Access Token
          • Scope選擇默認(rèn)的GlobalID填入任意不產(chǎn)生命名沖突的 ID
          • Token填入剛剛復(fù)制備用的 GitLab 令牌字符串(可忽略字符串長(zhǎng)度的提示)

          完成這部分配置之后,KubeSphere DevOps 流水線的狀態(tài)也會(huì)和我們 GitLab 中的 Pipeline 狀態(tài)形成聯(lián)動(dòng),大家可以參看視頻中的效果。

          使用 Jenkinsfile 創(chuàng)建 KubeSphere DevOps 流水線

          讓我們進(jìn)入之前創(chuàng)建的demoDevOps 項(xiàng)目,開始「創(chuàng)建」流水線。

          在彈出的「創(chuàng)建流水線」對(duì)話框中,我們填入一個(gè)流水線「名稱」并點(diǎn)擊下方「代碼倉(cāng)庫(kù)(可選)」這個(gè)區(qū)域來進(jìn)行代碼倉(cāng)庫(kù)綁定。

          進(jìn)入到「選擇代碼倉(cāng)庫(kù)」面板后,我們選擇GitLab標(biāo)簽頁(yè),然后在「GitLab 服務(wù)器地址」下拉框中選擇我們上一小節(jié)在 Jenkins 中添加到GitLab CE服務(wù)器。由于我們演練的是私有倉(cāng)庫(kù)訪問,下面需要先選擇一個(gè)憑證用于訪問私有代碼倉(cāng)庫(kù)。在之前沒有創(chuàng)建的情況下,這里我們點(diǎn)擊綠色的「創(chuàng)建憑證」鏈接開始創(chuàng)建。

          在彈出的「創(chuàng)建憑證」對(duì)話框中,輸入「名稱」后選定類型為用戶名和密碼;然后在「用戶名」文本框中輸入我們的賬號(hào)root,在「密碼/令牌」中輸入之前從保密字典中獲取到的初始密碼。

          通過「確定」按鈕保存憑證后回到「選擇代碼面板」,在「憑證」下拉框中選擇剛剛創(chuàng)建的gitlab-root,然后在「項(xiàng)目組/所有者」文本庫(kù)中填入我們的賬號(hào)root,點(diǎn)擊「代碼倉(cāng)庫(kù)」下拉框可看到root賬號(hào)下所有的代碼倉(cāng)庫(kù),這里我們可以看到并選擇之前創(chuàng)建的示例項(xiàng)目root/nodejs-demo

          通過 ?? 按鈕確認(rèn)并保存配置后會(huì)再次回到「創(chuàng)建流水線」面板,此時(shí)可以看到「代碼倉(cāng)庫(kù)」已出現(xiàn)我們選擇的root/nodejs-demo項(xiàng)目,點(diǎn)擊「下一步」進(jìn)入「高級(jí)設(shè)置」標(biāo)簽頁(yè),這里我們不做額外的配置,直接點(diǎn)擊「確定」來創(chuàng)建流水線。創(chuàng)建成功后,我們可以看到如下一個(gè)「分支數(shù)量」為0并且健康的流水線。

          稍后片刻點(diǎn)擊進(jìn)入新建的file流水線,可以看到系統(tǒng)已經(jīng)掃描到帶有Jenkinsfilemaster分支并已經(jīng)開始運(yùn)行流水線。

          點(diǎn)擊master分支進(jìn)入分支詳情頁(yè)面,不管運(yùn)行成功還是失敗都可以進(jìn)一步點(diǎn)擊「運(yùn)行 ID」一欄中的序號(hào)來查看詳細(xì)的運(yùn)行日志及制品等。

          等待一段時(shí)間后運(yùn)行成功,進(jìn)入運(yùn)行 ID 為1的運(yùn)行記錄可以看到如下圖展示的界面。進(jìn)一步我們可以點(diǎn)擊右上角的「查看日志」按鈕來了解詳細(xì)的流水線執(zhí)行情況。

          注意:對(duì)于多分支流水線,默認(rèn)會(huì)先執(zhí)行checkout scm步驟,然后再執(zhí)行 Jenkinsfile 中定義的流水線內(nèi)容。

          使用圖形編輯器創(chuàng)建 KubeSphere DevOps 流水線

          本小節(jié)內(nèi)容可參考 KubeSphere 官方文檔:DevOps 用戶指南 / 使用 DevOps / 使用圖形編輯面板創(chuàng)建流水線[10]

          KubeSphere DevOps 流水線也可以通過圖形編輯界面來進(jìn)行創(chuàng)建,讓我們重新回到demoDevOps 項(xiàng)目首頁(yè),「創(chuàng)建」一個(gè)新流水線。這次在「創(chuàng)建流水線」面板中我們不綁定代碼倉(cāng)庫(kù),直接「下一步」再直接「創(chuàng)建」一個(gè)名為gui的流水線。

          進(jìn)入流水線詳情頁(yè)面后,我們可以在右側(cè)面板看到「編輯流水線」的按鈕,點(diǎn)擊后在彈出的「選擇流水線模版」對(duì)話框中,我們選擇自定義流水線

          另兩個(gè)流水線模版包含了更完整的 CI / CD 流水線構(gòu)建示例,但內(nèi)容相對(duì)復(fù)雜,歡迎大家線下自行選用進(jìn)行體驗(yàn)!

          下面我們嘗試用圖形編輯器復(fù)現(xiàn)前一小節(jié)的兩個(gè)操作步驟,即拉起代碼,并打印一條 Hello World 消息。首先,我們點(diǎn)擊左側(cè)面板的+按鈕,然后選中添加出來的一個(gè)階段塊。

          接著我們點(diǎn)擊左側(cè)階段塊上的「+ 添加步驟」,并在右側(cè)刷出的「添加步驟」面板中選則git步驟,在彈出的對(duì)話框中填入我們示例代碼倉(cāng)庫(kù)的地址 HTTP Git 地址(如[http://gitlab.example.com/root/nodejs-demo.git](http://gitlab.example.com/root/nodejs-demo.git "http://gitlab.example.com/root/nodejs-demo.git")),憑證選用之前創(chuàng)建的gitlab-root,分支填寫master

          完成后我們依樣畫葫蘆,再次添加一個(gè)打印消息步驟并填入Hello World!作為內(nèi)容,最后得到如下圖所示的整體效果。

          完成編輯后「確定」再「確定」來保存流水線,回到詳情頁(yè)面后,可以通過右上角的「運(yùn)行」按鈕來執(zhí)行流水線。

          運(yùn)行成功后可以再次查看流水線運(yùn)行記錄,并查看運(yùn)行日志,得到如下圖所示結(jié)果。

          【番外】使用 SSH 訪問 Kubernetes 集群中的 GitLab 代碼倉(cāng)庫(kù)

          前文介紹的代碼倉(cāng)庫(kù)的訪問方式都是通過 HTTP 的形式,但現(xiàn)實(shí)工作中我們最常用的還是 SSH 的訪問方式,那是否可以直接通過git clone [email protected]:root/nodejs-demo.git這樣的方式來拉取和推送代碼呢?

          答案是肯定的:可以!但是這里有一個(gè)大坑需要注意 —— 默認(rèn) SSH 用的是22端口,但多了一層 Kubernetes 網(wǎng)絡(luò)之后,不管是否使用這個(gè)默認(rèn)端口都需要處理好 GitLab 如何對(duì)外暴露 SSH 服務(wù)。

          假設(shè)我們可以接受重新綁定一個(gè)端口來使用 GitLab SSH,那么可以這樣操作:

          • 首先,我們回到 GitLab 部署項(xiàng)目中,找到 gitlab-shell服務(wù)并為它開放 NodePort 外部訪問端口
          • 基于這個(gè)端口,把 Git 訪問的地址都改為ssh://git@://.git的形式,例如ssh://[email protected]:32222/root/nodejs-demo.git

          寫在最后:感謝您這么耐心的看完這整個(gè)教程!如果您覺得這些內(nèi)容如果自己部署起來確實(shí)有點(diǎn)挑戰(zhàn),那推薦可以看看 極狐 GitLab[11]KubeSphere Cloud[12] 的一些商業(yè)產(chǎn)品,讓專業(yè)的人做專業(yè)的事兒,釋放大家的時(shí)間更好的打磨自己的業(yè)務(wù)產(chǎn)品。也期待看到更多的開源社區(qū)和商業(yè)產(chǎn)品的良性互動(dòng),一起推動(dòng)我們國(guó)內(nèi)的軟件產(chǎn)業(yè)在虎年 “虎踞龍盤今勝昔,天翻地覆慨而慷”!

          引用鏈接

          [1]

          在 Linux 安裝 KubeSphere: https://kubesphere.com.cn/docs/quick-start/all-in-one-on-linux/

          [2]

          在 Kubernetes 安裝 KubeSphere: https://kubesphere.com.cn/docs/quick-start/minimal-kubesphere-on-k8s/

          [3]

          啟用可插拔組建 · KubeSphere DevOps 系統(tǒng): https://kubesphere.com.cn/docs/pluggable-components/devops/

          [4]

          Jenkins: https://jenkins.io/

          [5]

          Binary-to-Image (B2I): https://kubesphere.com.cn/docs/project-user-guide/image-builder/binary-to-image/

          [6]

          Source-to-Image (S2I): https://kubesphere.com.cn/docs/project-user-guide/image-builder/source-to-image/

          [7]

          極狐 GitLab Helm Chart 快速開始指南: https://docs.gitlab.cn/charts/#%E6%9E%81%E7%8B%90gitlab-helm-chart-%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B%E6%8C%87%E5%8D%97https://docs.gitlab.cn/charts/#%E6%9E%81%E7%8B%90gitlab-helm-chart-%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B%E6%8C%87%E5%8D%97

          [8]

          完整屬性列表: https://docs.gitlab.cn/charts/#%E5%AE%8C%E6%95%B4%E5%B1%9E%E6%80%A7%E5%88%97%E8%A1%A8

          [9]

          技術(shù)博客: https://www.yuque.com/serviceup/cloud-native-talks/apisix-in-kubesphere

          [10]

          使用圖形編輯面板創(chuàng)建流水線: https://kubesphere.com.cn/docs/devops-user-guide/how-to-use/create-a-pipeline-using-graphical-editing-panel/

          [11]

          極狐 GitLab: https://gitlab.cn/

          [12]

          KubeSphere Cloud: https://kubesphere.cloud/

          關(guān)于?KubeSphere

          KubeSphere (https://kubesphere.io)是在 Kubernetes 之上構(gòu)建的開源容器混合云,提供全棧的 IT 自動(dòng)化運(yùn)維的能力,簡(jiǎn)化企業(yè)的 DevOps 工作流。

          KubeSphere?已被?Aqara?智能家居、愛立信、本來生活、東軟、華云、新浪、三一重工、華夏銀行、四川航空、國(guó)藥集團(tuán)、微眾銀行、杭州數(shù)跑科技、紫金保險(xiǎn)、去哪兒網(wǎng)、中通、中國(guó)人民銀行、中國(guó)銀行、中國(guó)人保壽險(xiǎn)、中國(guó)太平保險(xiǎn)、中國(guó)移動(dòng)、中國(guó)電信、天翼云、中移金科、Radore、ZaloPay?等海內(nèi)外數(shù)千家企業(yè)采用。KubeSphere 提供了開發(fā)者友好的向?qū)讲僮鹘缑婧拓S富的企業(yè)級(jí)功能,包括?Kubernetes?多云與多集群管理、DevOps?(CI/CD)、應(yīng)用生命周期管理、邊緣計(jì)算、微服務(wù)治理?(Service?Mesh)、多租戶管理、可觀測(cè)性、存儲(chǔ)與網(wǎng)絡(luò)管理、GPU?support?等功能,幫助企業(yè)快速構(gòu)建一個(gè)強(qiáng)大和功能豐富的容器云平臺(tái)。

          ???GitHub:https://github.com/kubesphere
          ????官網(wǎng)(中國(guó)站):https://kubesphere.com.cn
          ????????微信群:請(qǐng)搜索添加群助手微信號(hào)?kubesphere


          瀏覽 51
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  一日二日无码 | 无码粗大| 国产中文 | 最新国产成人小电影 | 99热官方网站 |