gitlab-runner mit docker-compose installieren
Wählen Sie zuerst ein Verzeichnis, in dem der Dienst residieren soll. Ich empfehle /opt/gitlab-runner. Erstellen Sie dann docker-compose.yml in diesem Verzeichnis mit folgendem Inhalt:
gitlab-runner:
image: 'gitlab/gitlab-runner:latest'
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./config:/etc/gitlab-runner
restart: unless-stoppedführen Sie dann diesen Befehl aus, um den Runner zu konfigurieren:
docker-compose exec gitlab-runner gitlab-runner registerEs wird Sie nach Details zur GitLab-Instanz fragen, die Sie anhängen möchten. Sie finden diese Informationen unter https://<your-gitlab-domain>/admin/runners. Dieses Beispiel ist für meine GitLab-Instanz:
Running in system-mode.
Enter the GitLab instance URL (for example, https://gitlab.com/):
https://gitlab.techoverflow.net/
Enter the registration token:
Loo2lahf9Shoogheiyae
Enter a description for the runner:
[148a53203df8]: My-Runner
Enter tags for the runner (comma-separated):
Registering runner... succeeded runner=oc-oKWMH
Enter an executor: custom, docker-ssh, shell, virtualbox, docker-ssh+machine, docker, parallels, ssh, docker+machine, kubernetes:
shell
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!Starten Sie nun den Runner, der mit der alten Konfiguration läuft (d.h. ohne angehängte GitLab-Instanz), neu:
Nachdem das abgeschlossen ist, können Sie das Skript aus unserem vorherigen Beitrag Systemd-Service für Ihr docker-compose-Projekt in 10 Sekunden erstellen in dem Verzeichnis ausführen, in dem sich docker-compose.yml befindet.
Dies wird automatisch einen systemd-Service generieren und den Runner starten (auch beim Booten). Für weitere Details siehe den entsprechenden Blogpost. Wenn Ihr Verzeichnis gitlab-runner heißt, wird die Service-Datei in /etc/systemd/systemd/gitlab-runner.service gespeichert, daher sind dies die Befehle, mit denen Sie den Service steuern können:
Beachten Sie, dass das Skript, das den systemd-Service erstellt, den Runner automatisch startet, sodass Sie ihn nicht manuell starten müssen!
Starten mit
Neu starten mit
Stoppen mit
Status anzeigen:
Protokolle anzeigen & folgen:
Protokolle in less anzeigen:
Siehe auch Mini systemd Cheat-Sheet
Siehe auch gitlab-runner für mehrere GitLab-Instanzen registrieren.
Beachten Sie, dass Sie auch
verwenden können, um die Protokolle anzuzeigen (führen Sie dies aus dem Verzeichnis aus, in dem sich docker-compose.yml befindet).
Falls Sie eine Fehlermeldung wie
in Ihren Jobs sehen, siehe Gitlab CI-Fehler beheben: error during connect: Post http://docker:2375/v1.40/auth: dial tcp: lookup docker on … no such host