GitLab Runner: 入門指南

將您的 Stackhero GitLab Runner 連接至 GitLab.com 或自建 GitLab,並運行您的第一個 pipeline

👋 歡迎瀏覽 Stackhero 文件!

Stackhero 為您提供易於使用的 GitLab Runner cloud 解決方案,專為高效處理您的 GitLab CI/CD 任務而設計。您可以享有以下優勢:

  • 無限 CI/CD 時數:不按分鐘收費,您的 pipeline 可隨時運行。
  • 多個並行任務:同時運行多個 job,加快整個 pipeline 的速度。
  • 支援 Docker executorDocker-in-Docker:簡化容器映像的建構及推送流程。
  • 相容於 GitLab.com 及任何 自建 GitLab 實例。
  • 專屬私人 VM,採用高速 NVMe/SSD 硬碟,確保 build 穩定可靠。
  • 提供 🇪🇺 歐洲🇺🇸 美國 區域選擇。

節省時間:您只需幾分鐘即可連接第一個 GitLab Runner,立即開始運行 pipeline!

GitLab Runner 是負責執行 GitLab CI/CD 任務的代理程式。每當 pipeline 被觸發時,runner 會接收每個任務,在全新 Docker container 內執行,然後將結果回報給 GitLab。

使用 Stackhero,您的 runner 會運行於專屬的私人虛擬機(VM)上。沒有按分鐘收費或使用配額,您的 CI/CD 分鐘數量無限制。根據您的方案,runner 可以同時處理多個並行任務

本指南將帶您於數分鐘內完成 Stackhero runner 與 GitLab 的連接。

在您的 Stackhero 控制台,您可以建立新的 GitLab Runner 服務,並選擇最適合您需求的方案。方案會決定您可用的 CPU、RAM,以及同時可執行的任務數量(對應 GitLab Runner 的 concurrent 設定,即可同時運行的任務數)。

您的 runner 約 2 分鐘內即可啟動並運作。

您的 runner 會透過runner 認證 token 連接至 GitLab。您需要在 GitLab 產生這個 token,同時決定 runner 的作用範圍:

  • Project runner:打開您的專案,然後前往 Settings > CI/CD > Runners > New project runner
  • Group runner:打開您的群組,然後前往 Settings > CI/CD > Runners > New group runner
  • Instance runner(僅限自建 GitLab):前往 Admin area > CI/CD > Runners > New instance runner

建立 runner 時,您可以:

  • 新增標籤(如 dockerstackhero),方便您在任務中指定此 runner。
  • 若希望 runner 執行所有任務,可允許其執行未標籤的任務

GitLab 會提供一個以 glrt- 開頭的runner 認證 token。請妥善保管此 token,因為 runner 會用它進行身份驗證。

舊有的 registration token 流程已被淘汰。請使用上述方式建立 runner 時產生的runner 認證 tokenglrt-...)。

返回您的 Stackhero 控制台,打開 GitLab Runner 服務設定,並輸入以下資料:

  • 您的 GitLab URL:如使用 GitLab.com,請填寫 https://gitlab.com;如為自建 GitLab,請填寫您的實例網址(例如,若您在 Stackhero 上運行 GitLab,網址可能是 https://git.your-company.com)。
  • 在步驟 2 取得的 runner 認證 tokenglrt-...)。
  • 您希望允許的同時執行任務數量

儲存設定後,runner 會自動連接至 GitLab,並於您建立 runner 的 Runners 頁面顯示為在線

首先,在您的 repository 根目錄新增 .gitlab-ci.yml 檔案:

stages:
  - build
  - test

build:
  stage: build
  image: node:22
  script:
    - npm ci
    - npm run build

test:
  stage: test
  image: node:22
  script:
    - npm test

提交並推送您的更改。GitLab 會啟動 pipeline,您的 Stackhero runner 會執行這些任務。如果您在建立 runner 時有加上標籤,可以在任務中這樣指定:

build:
  stage: build
  tags:
    - stackhero
  image: node:22
  script:
    - npm ci
    - npm run build

就是這麼簡單。您的 pipeline 現已在專屬 runner 上運行,build 分鐘無限制。

想在 pipeline 內建構及推送 Docker image?請繼續閱讀 建構 Docker image