Aller au contenu principal

gitlab runner, docker et docker compose avec enregistrement automatique

Pour configurer un GitLab Runner utilisant Docker Compose, vous devez créer un fichier docker-compose.yml qui définit comment exécuter le GitLab Runner dans un conteneur Docker. Voici un guide étape…

coolibra08 juil. 20262018 vues

Pour configurer un GitLab Runner utilisant Docker Compose, vous devez créer un fichier docker-compose.yml qui définit comment exécuter le GitLab Runner dans un conteneur Docker. Voici un guide étape par étape pour réaliser cette configuration :

 

  • Créer un token dans votre  giltab

Dans le groupe gitlab, clic runners > new group runner  puis renseigner comme ceci

Cocher untagged jobs si vous voulez que le runner execute les jobs sans un dans des tags definis dans le champ tags. Clic qur create runner et suvegardez le token qui sera affiché une seule fois.

 

 

 

  • Runner avec Docker

 

    • Lancer le conteneur runner gitlab 
docker run -d --name gitlab-runner --restart always \
  -v /srv/gitlab-runner/config:/etc/gitlab-runner \
  -v /var/run/docker.sock:/var/run/docker.sock \
  gitlab/gitlab-runner:alpine3.19

 

    • Enregistrer le runner avec token precedement créé
docker exec -it gitlab-runner /bin/bash

gitlab-runner register \
  --non-interactive \
  --executor "docker" \
  --docker-image docker:27.1.1-dind \
  --url "https://gitlab.com/" \
  --registration-token "glrt-syykPxsYfdddfc1_Popj-"


# gitlab-runner register \
#   --non-interactive \
#   --executor "docker" \
#   --docker-image docker:27.1.1-dind \
#   --url "https://gitlab.com/" \
#   --registration-token "glrt-syykPxsYp9Jcc1_Popj-" \
#   --description "test-docker-runner" \
#   --tag-list "local-runner" \
#   --run-untagged="true" \
#   --locked="false"

 

 

  • Runner avec Docker compose

 

    • Créer le fichier docker-compose.yaml avec ce contenu
services:
  gitlab-runner:
    image: gitlab/gitlab-runner:alpine3.19
    restart: always
    volumes:
      - ./config:/etc/gitlab-runner
      - /var/run/docker.sock:/var/run/docker.sock
    deploy:
      mode: replicated
      replicas: 3

 

    • Créer le fichier config.toml avec ce contenu
concurrent = 8
check_interval = 0

[[runners]]
  name = "local-runner"
  url = "https://gitlab.com/"
  token = "glrt-LzKLNrAxxbpRPcpBw4Us"
  executor = "docker"
  [runners.custom_build_dir]
  [runners.docker]
    tls_verify = false
    image = "docker:27.1.1-dind"
    privileged = true
    disable_entrypoint_overwrite = false
    oom_kill_disable = false
    disable_cache = false
    volumes = ["/cache", "/var/run/docker.sock:/var/run/docker.sock"]
    shm_size = 0
  [runners.cache]
    Type = "shell"
    Path = "/cache/gitlab-runner"
    Shared = true

 

    • Lancer le deploiement
docker-compose up -d

 

 

 

 


N'hésitez pas à laisser des commentaires si vous avez des questions ou des suggestions !


 

Commentaires

Connectez-vous pour rejoindre la discussion.

Aucun commentaire pour le moment.