Middle
Kuidas töötab GitLab Runner?
sobes.tech AI
Vastus AI-lt
GitLab Runner on agent, joka suorittaa CI/CD-tehtäviä. Se vaihtaa tietoja GitLab CI/CD:n kanssa API:n kautta. Kun GitLabissa tapahtuu tapahtuma, joka käynnistää putken (esim. commit), GitLab lähettää pyynnön runnerille. Runner ottaa tehtävän, kloonaa repositorion, suorittaa .gitlab-ci.yml-tiedostossa kuvatut komennot ja lähettää tuloksen takaisin GitLabiin.
Keskeiset työskentelytavat:
- Runner-tyypit: Shared, Specific, Group. Eroavat näkyvyysalueen ja projektien saatavuuden mukaan.
- Executor (Suorittaja): Määrittää ympäristön, jossa tehtävät suoritetaan. Suositut suorittajat:
shell,docker,kubernetes,virtualbox,ssh. Suorittajan valinta vaikuttaa eristykseen ja suoritteen ympäristöön. - Rekisteröinti: Runner rekisteröityy GitLabiin tokenin avulla, yhdistäen sen tiettyyn instanssiin, ryhmään tai projektiin.
- Polling: Runner kysyy säännöllisesti GitLabilta uusia tehtäviä.
config.toml: Asetustiedosto, joka määrittää runnerin asetukset, mukaan lukien suorittajan tyyppi, rinnakkaisten tehtävien määrä ja muut parametrit.
Esimerkki config.toml-rakenne:
# globaalit asetukset
concurrent = 4
# runnerin asetukset
[[runners]]
name = "minu-docker-runner"
url = "https://gitlab.com/"
token = "SINUN_RUNNER_TOKEN"
executor = "docker" # suorittajan valinta
[runners.docker]
tls_verify = false
image = "ubuntu:latest" # kuva dockerin käytössä
privileged = false
disable_entrypoint_overwrite = false
oom_kill_disable = false
disable_cache = false
volumes = ["/cache"]
shm_size = 0
[runners.cache]
[runners.cache.s3]
[runners.cache.gcs]