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

【云原生】DevOps之使用Gitlab Runner進行CICD

這篇具有很好參考價值的文章主要介紹了【云原生】DevOps之使用Gitlab Runner進行CICD。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

在很久之前的文章中,我們已經(jīng)搭建過了Jenkins+Docker+Harbor+SpringCloud微服務持續(xù)集成自動化部署,今天來介紹Gitlab原生的Gitlab Runner CICD功能。

一、Gitlab Runner簡介

Gitlab實現(xiàn)CICD的方式有很多,比如通過Jenkins,通過Gitlab Runner等,今天主要介紹后者。Gitlab在安裝的時候,就默認包含了Gitlab CI的能力,但是該能力只是用于協(xié)調(diào)作業(yè),并不能真的去執(zhí)行作業(yè),因此需要搭配Gitlab Runner來作為執(zhí)行器實現(xiàn)具體的CICD工作。Gitlab Runner可以被安裝在任意支持的系統(tǒng)上,比如Linux、Windows、Mac,甚至也可以運行在Docker、Kubernetes集群上。

Gitlab Runner分為三種類型,在注冊Runner過程中使用不同類型的token就能區(qū)分不同的類型。

  • Shared Runners,共享Runner,可以被倉庫里面的任意項目使用;token獲取位置為全局管理中心-Runner-注冊令牌;
  • Group Runners,組Runner,僅能被某個組中的任意項目使用;token獲取位置為項目群組-CICD-Runner-注冊令牌;
  • Specific Runners,特定Runner,僅能被指定的項目使用;token獲取位置為項目-設置-CICD-Runner-注冊令牌;

如下是Gitlab Runner 的大致工作流程示意:

gitlab cicd devops,云原生架構(gòu)搭建,分布式架構(gòu)搭建,devops,gitlab,jenkins,云原生,CICD

二、Gitlab Runner注冊

2.1 使用Docker安裝

GitLab Runner在不同平臺的注冊可以在官網(wǎng)找到教程,本文就以Docker方式講解如何進行注冊,在開始之前,確保我們的電腦上已經(jīng)安裝好了Docker,沒安裝的同學請看這篇文章Docker入門精講。

首先我們需要下載Gitlab Runner的鏡像,并運行起來:

# 如果需要把配置文件掛載到宿主機的某個目錄,可以自行修改
docker run -d --name gitlab-runner-01 --restart always -v /srv/gitlab-runner/config:/etc/gitlab-runner -v /var/run/docker.sock:/var/run/docker.sock gitlab/gitlab-runner:latest

然后執(zhí)行注冊命令:

# 進入容器內(nèi)部并執(zhí)行注冊命令
docker exec -it gitlab-runner-01 gitlab-runner register
Runtime platform                                    arch=amd64 os=linux pid=37 revision=bbcb5aba version=15.3.0
Running in system-mode.

# 填寫gitlab的地址,確保容器內(nèi)能夠順利訪問到該地址
Enter the GitLab instance URL (for example, https://gitlab.com/):
http://10.96.12.149/
# 填寫需要注冊的runner token,此處選擇shared runner token
Enter the registration token:
BHRagrsztQAxdMPPhxGm
# 描述信息隨意填寫,也可不填
Enter a description for the runner:
[caa2879d6833]: gitlab-runner-01
# tag隨意填寫,此處不填
Enter tags for the runner (comma-separated):
# 隨意填寫,此處不填
Enter optional maintenance note for the runner:

Registering runner... succeeded                     runner=BHRagrsz
# 選擇執(zhí)行器的種類,建議選擇docker
Enter an executor: docker, shell, ssh, kubernetes, custom, docker-ssh, parallels, virtualbox, docker+machine, docker-ssh+machine:
docker
# 使用最新版本
Enter the default Docker image (for example, ruby:2.7):
docker:latest
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!

Configuration (with the authentication token) was saved in "/etc/gitlab-runner/config.toml"

2.2 容器注冊的runner

此時,我們在gitlab的runner界面就能看到已經(jīng)注冊好的runner信息了:

gitlab cicd devops,云原生架構(gòu)搭建,分布式架構(gòu)搭建,devops,gitlab,jenkins,云原生,CICD

其余系統(tǒng)或者環(huán)境注冊runner的過程就不再贅述了,基本相同,詳情參考文檔。

三、Gitlab Runner運行

我們首先準備一個項目,這個項目內(nèi)容很簡單,只是作為runner演示使用,總共兩個文件:

  • index.html,用來表示項目的主頁;

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>CICD測試</title>
    </head>
    <body>
    <h1>Gitlab CICD 測試?。?!</h1>
    </body>
    </html>
    
  • .gitlab-ci.yml,定義CICD流程的文件;

    build-job:
      stage: build
      script:
        - echo "Hello, $GITLAB_USER_LOGIN!"
    
    test-job1:
      stage: test
      script:
        - echo "This job tests something"
    
    test-job2:
      stage: test
      script:
        - echo "This job tests something, but takes more time than test-job1."
        - echo "After the echo commands complete, it runs the sleep command for 20 seconds"
        - echo "which simulates a test that runs 20 seconds longer than test-job1"
        - sleep 20
    
    deploy-prod:
      stage: deploy
      script:
        - echo "This job deploys something from the $CI_COMMIT_BRANCH branch."
    

    大致的意思是,build階段啟動一個作業(yè),輸出一段文本;test階段并行啟動兩個作業(yè),也是分別輸出一段文本;deploy階段啟動一個作業(yè),輸出一段文本;這三個階段分別模擬了構(gòu)建、測試、部署流程,具體的語法關鍵詞等內(nèi)容不屬于本文范疇,可以參考官網(wǎng)。

    3.1 測試項目

以上項目內(nèi)容提交到gitlab后,顯示如下,僅有master分支:

gitlab cicd devops,云原生架構(gòu)搭建,分布式架構(gòu)搭建,devops,gitlab,jenkins,云原生,CICD

3.2 運行流水線

此時,任意的提交行為、合并行為都會觸發(fā)流水線的執(zhí)行,但是也可以手動執(zhí)行,我們此時選擇項目中的CICD,流水線,并點擊運行流水線。

gitlab cicd devops,云原生架構(gòu)搭建,分布式架構(gòu)搭建,devops,gitlab,jenkins,云原生,CICD

3.3 流水線運行界面

如下是運行中的流水線狀態(tài),可以查看各個階段的任務,點擊任務圖標還可以查看具體的任務執(zhí)行明細。

gitlab cicd devops,云原生架構(gòu)搭建,分布式架構(gòu)搭建,devops,gitlab,jenkins,云原生,CICD

3.4 runner任務運行數(shù)量統(tǒng)計

需要注意的是,流水線中包含多個任務時,這些任務是會被Gitlab CI隨機調(diào)度到可以運行的runner上運行的,并非一直在某一個runner上,如下是運行三次流水線,每個runner的任務執(zhí)行數(shù)量統(tǒng)計:

gitlab cicd devops,云原生架構(gòu)搭建,分布式架構(gòu)搭建,devops,gitlab,jenkins,云原生,CICD

至此,我們完成了兩個runner的搭建和注冊,并運行了示例項目中的流水線。后面文章我們再講解工業(yè)級流水線的配置和高級的CICD內(nèi)容。

參考資料

GitLab Runner | GitLab文章來源地址http://www.zghlxwxcb.cn/news/detail-777242.html

到了這里,關于【云原生】DevOps之使用Gitlab Runner進行CICD的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領支付寶紅包贊助服務器費用

相關文章

  • DevOps持續(xù)交付之容器化CICD流水線

    DevOps持續(xù)交付之容器化CICD流水線

    隨著DevOps?規(guī)?;穆涞睾蛻?,持續(xù)集成以及持續(xù)交付已經(jīng)是?種常態(tài)的。CI指的是持續(xù)集成,使?的開源?具是Jenkins,CD指的是持續(xù)交付和持續(xù)部署,?個完整的軟件開發(fā)?命周期為: 主要流程可以具體為: 構(gòu)建階段-單元測試階段-部署階段-?動化測試階段-部署到?產(chǎn)環(huán)境

    2024年02月03日
    瀏覽(39)
  • PingCode DevOps 團隊:企業(yè)CICD流水線可能會遇到的問題及解法

    CICD 流水線是指一系列自動化的構(gòu)建、測試和部署步驟,用于將應用程序從開發(fā)到生產(chǎn)環(huán)境的過程。在 CICD 流水線中,每個步驟都是自動化的,并且在完成后會觸發(fā)下一個步驟的執(zhí)行。 CICD 流水線可以幫助團隊更快地交付產(chǎn)品,減少手動錯誤,并提高軟件質(zhì)量。通過自動化構(gòu)

    2024年02月10日
    瀏覽(21)
  • DevOps-GitHub/GitLab

    DevOps-GitHub/GitLab

    GitHub是一個開源代碼托管平臺?;趙eb的Git倉庫,提供共有倉庫和私有倉庫(私有倉庫收費)。 GitLab可以創(chuàng)建免費私有倉庫。 為了快速操作,這里對創(chuàng)建倉庫以及注冊不做說明。 首先再GitHub上創(chuàng)建一個遠程倉庫 github_test 使用GitHub遠程倉庫 在github上獲取克隆地址(注意,這個

    2024年02月15日
    瀏覽(48)
  • DevOps搭建(四)-GitLab安裝細步驟

    DevOps搭建(四)-GitLab安裝細步驟

    在這里我們用docker安裝 進入該目錄 輸入以下內(nèi)容保存 查看啟動日志 稍等片刻,如果沒看到錯誤日志,證明已經(jīng)正常啟動。 開放GitLab對應的端口 重啟防火墻 GitLab的默認登錄賬號為root,密碼需要進入docker容器中獲取。 6.1、獲取root賬號登錄密碼 進入gitlab容器: 獲取密碼 復制

    2024年02月04日
    瀏覽(22)
  • DevOps基礎服務1——版本控制gitlab

    DevOps基礎服務1——版本控制gitlab

    概念: 版本控制是指對軟件開發(fā)過程中各種程序代碼、配置文件及說明文檔等文件變更的管理,是軟件配置管理的核心思想之一。 常用版本控制工具:gitlab、subversion。 主要功能: 追蹤文件的變更??梢宰粉櫟绞裁慈嗽谑裁磿r候更改了什么內(nèi)容。每次文件發(fā)生改變,則文件

    2024年02月15日
    瀏覽(22)
  • 20.云原生之GitLab CICD實戰(zhàn)

    20.云原生之GitLab CICD實戰(zhàn)

    云原生專欄大綱 GitLab Runner 是一個開源的持續(xù)集成/持續(xù)交付(CI/CD)工具,用于在 GitLab CI/CD 環(huán)境中執(zhí)行自動化構(gòu)建、測試和部署任務。它是 GitLab CI/CD 的一部分,負責管理和執(zhí)行 CI/CD 作業(yè)。 以下是 GitLab Runner 的一些關鍵特點和功能: 多平臺支持:GitLab Runner 可以在多種操作

    2024年01月23日
    瀏覽(20)
  • DevOps系列文章之 GitLab CI/CD

    DevOps系列文章之 GitLab CI/CD

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

    2024年01月22日
    瀏覽(62)
  • k3s x GitLab Runner Operator,GitLab CI 云原生構(gòu)建新體驗

    k3s x GitLab Runner Operator,GitLab CI 云原生構(gòu)建新體驗

    GitLab CI 是非常常用的一款 CI/CD 工具,只需要在 .gitlab-ci.yml?文件中用 YAML 語法編寫 CI/CD 流水線即可。而 GitLab CI 能夠運行的關鍵組件是 GitLab Runner。GitLab Runner 是一個輕量級、高擴展的代理,主要用來執(zhí)行 GitLab CI/CD 流水線中的 Job,然后將 Job 的執(zhí)行結(jié)果返回 GitLab 實例。 Gi

    2024年01月21日
    瀏覽(17)
  • 01-DevOps代碼上線-git入門及gitlab遠程倉庫

    01-DevOps代碼上線-git入門及gitlab遠程倉庫

    10.0.0.71-gitlab? ? ? ? ? ? 2c2g-20GB 10.0.0.72-jenkins? ? ? ? ?2c2g-20GB 10.0.0.73-sonarqube? ?1c1g-20GB 10.0.0.74-nexus? ? ? ? ? 1c1g-20GB 10.0.0.75-dm? ? ? ? ? ? ? ?1c1g-20GB? ?(模擬寫代碼服務器) ? ? ? ? 在centos系統(tǒng)中,本身就有git,如果沒有yum安裝一下git [root@gitlab ~]# git --version git vers

    2024年03月22日
    瀏覽(22)
  • devops完整搭建教程(gitlab、jenkins、harbor、docker)

    devops完整搭建教程(gitlab、jenkins、harbor、docker)

    DevOps(Development Operations)是一種軟件開發(fā)方法論和工作流程,旨在促進軟件開發(fā)團隊和運維團隊之間的協(xié)作與溝通,以實現(xiàn)更高效的軟件交付和運營。 持續(xù)集成(Continuous Integration,CI):開發(fā)團隊將代碼頻繁地集成到共享存儲庫中,確保代碼的一致性和穩(wěn)定性。 持續(xù)交付(

    2024年02月19日
    瀏覽(38)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領取紅包

二維碼2

領紅包