GitLab CI/CD課程9

GitLab Runners for running the jobs

ZONGRU Li
Aug 8, 2022

前面課程學到了:

  1. 如何建構基本的PIPELINE
  2. 內含JobsStages
  3. 只針對特定Branch執行

但是GitLab在哪裡執行這些Jobs? 基本上我們只知道是Linux環境

因為可以執行簡單的Linux指令(echo,cat,ls…)

GitLab Server & Runner

  • GitLab Architecture
  • Execution of the jobs

首先GitLab Architecture:

  • 包含GitLab Server
  • 或稱為GitLab Instance
  • 又稱為GitLab Installation

其中GitLab Server:

  • 是為主要的元件
  • 包含Pipeline的設定資訊
  • 管理Pipeline的執行
  • 儲存Pipeline的結果
  • 本身不執行任何的Job內容
  • 實際執行Job的是GitLab Runner

GitLab Runners:

  • 運行CI/CD JobAgent
  • GitLab Server發配jobs給這些可執行的Runners

而整個機制又是如何建立?

  1. GitLab本身作為SaaS — Runners:managed by GitLab
  2. Self-managed — Runners:Self-managed

GitLab Runners特點:

  • 亦即一些已經安裝好程式的機器,與GitLab Server機台是分開(不論虛擬還是實體)獨立運作
  • GitLab網站上則有事先提供這類Runner,供給GitLab所有Projects,所有的GitLab instance使用,i.e.給平台上的GitLab User使用,稱之為Shared Runners

參考課程(reference)

--

--

ZONGRU Li
ZONGRU Li

Written by ZONGRU Li

2022/11/17 開源部分個人筆記給LINE "Java程式語言討論區"社群,希望能對社群的技術學習做一點點貢獻.(掩面....記得退訂閱!

No responses yet