iT邦幫忙

0

GitLab runner的運作邏輯

  • 分享至 

  • xImage

想請問,我使用Docker作為GitLab Runner時,這些容器之間的關係

我在安裝GitLab Runner時,選擇二進制文件,在某個VM安裝完後,有一個註冊的指令gitlab-runner register,在這一步,我選擇Docker,並指定了一個Image(A)

而在配置流水線時,gitlab-ci.ymlimage也會指定一個Image(B)

請問它們之間的關係是什麼?

假設1:A負責接收GitLab的指令,並在VM中的Docker引擎建立一個新的容器B,然後在B內跑‵ gitlab-ci.yml的命令,執行完後銷毀B

假設2:A負責接收GitLab的指令,並在VM中的Docker引擎建立一個新的容器B,然後在B內跑‵ gitlab-ci.yml的命令,執行完後停止B,待下次Building時啟動

但若是這樣,指定A的Image的意義在哪裡,應該沒有指定的必要,且指定之後,他如何啟動B的?

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

3
墨嗓
iT邦研究生 4 級 ‧ 2022-03-04 23:37:19
最佳解答

當你的 task 配置沒有指定 Image 的時候,則使用預設值,也就是設置 runner 時給的那個 Image(A),作為 runner 啟動時使用的 Image,同理當在 Task 有指定 Image(B) 時,則使用 Image(B)。

我要發表回答

立即登入回答