Sobes.tech
Junior

Na čom beží runner pipeline v GitLab CI?

sobes.tech AI

Odpoveď od AI

GitLab Runner je agent, ktorý vykonáva vaše pipeline úlohy. Runner môže byť spustený na rôznych platformách:

  • Virtuálna stroj alebo fyzický server: Tradičný spôsob, ktorý umožňuje úplnú kontrolu nad prostredím.
  • Kontajnery (Docker): Umožňuje spúšťať každú úlohu v izolovanom, štandardizovanom prostredí. Toto je najpopulárnejší spôsob.
  • Kubernetes: GitLab Runner má vykonávateľa (executor) pre Kubernetes, ktorý spúšťa každú úlohu v samostatnom podu.
  • Cloudoví poskytovatelia: Niektorí poskytovatelia cloudových služieb ponúkajú služby na spúšťanie kontajnerov alebo virtuálnych strojov, ktoré môžu byť použité ako Runner.
  • macOS / Windows: Je možné spustiť runner na týchto operačných systémoch na zostavovanie špecifických projektov.

Pri nastavovaní runnera sa špecifikuje "executor", ktorý určuje, ako budú úlohy vykonávané. Najčastejšie sú: docker, shell, kubernetes.

Príklad definície runnera v súbore .gitlab-ci.yml s použitím docker executor:

stages:
  - build

build_job:
  stage: build
  script:
    - echo "Stavba projektu..."

V tomto príklade bude úloha build_job vykonaná na runneri, ktorý má nakonfigurovaný docker executor. GitLab Runner dostane túto úlohu a spustí ju v novom Docker konteineri, s použitím Docker obrazu špecifikovaného v konfigurácii runnera alebo v samotnom .gitlab-ci.yml (ak je uvedený image).