GitLab Runner: 4. Service erstellen

Diese Dokumentation ist Teil des Automatisieren mit der CLI-Leitfadens. Den vollständigen Leitfaden finden Sie hier: Starten Sie GitLab-Runner, rufen Sie dessen Zugangsdaten ab und ändern Sie die Konfiguration programmatisch mit der Stackhero CLI.

👋 Willkommen in der Stackhero-Dokumentation!

Stackhero bietet Ihnen eine unkomplizierte GitLab Runner Cloud-Lösung, mit der Sie Ihre GitLab CI/CD-Jobs effizient und ohne Aufwand ausführen können. Das erwartet Sie:

  • Unbegrenzte CI/CD-Minuten: Führen Sie Ihre Pipelines so oft aus, wie Sie möchten – ohne Abrechnung pro Minute oder unerwartete Zusatzkosten.
  • Mehrere gleichzeitige Jobs: Beschleunigen Sie Ihre Entwicklung, indem Sie mehrere Jobs parallel ausführen.
  • Der Docker Executor mit Docker-in-Docker-Unterstützung: Erstellen und pushen Sie Container-Images ganz einfach als Teil Ihres CI/CD-Prozesses.
  • Funktioniert nahtlos mit GitLab.com und self-managed GitLab-Instanzen.
  • Eine private, dedizierte Infrastruktur mit schneller NVMe/SSD-Speicherung sorgt für stabile und vorhersehbare Build-Performance.
  • Verfügbar in den Regionen 🇪🇺 Europa und 🇺🇸 USA, passend zu den Anforderungen Ihres Teams.

Sparen Sie Zeit: Sie können Ihren ersten GitLab Runner verbinden und bereits nach wenigen Minuten mit Ihren Pipelines starten!

Hier ein Beispielskript, das einen Stack erstellt, Ihren GitLab-Runner Service hinzufügt, auf den Start wartet, die Konfiguration (inklusive generierter Zugangsdaten) abruft und anschließend eine neue Konfiguration anwendet.

#!/bin/bash
set -e

export STACKHERO_TOKEN="usr-xxxxxx:your-token"

serviceStore="gitlab-runner"   # Der Name des GitLab-Runner Service Stores (siehe Schritt 2)
instance="..."                # Eine Instanzgröße aus Schritt 3
region="europe"               # Ein Regionsname aus Schritt 3

# Stack für Ihren Service erstellen (verwendet Ihre Standard-Organisation; ggf. --organization hinzufügen)
stackId=$(stackhero --format=script stack-create \
  --name="My GitLab-Runner stack")
echo "Stack erstellt: ${stackId}"

# GitLab-Runner zum Stack hinzufügen (Namen werden automatisch aufgelöst)
serviceId=$(stackhero --format=script service-add \
  --stack="My GitLab-Runner stack" \
  --service-store="${serviceStore}" \
  --instance="${instance}" \
  --region="${region}")
echo "Service hinzugefügt: gitlab-runner"

# Warten, bis der Service vollständig läuft (dies kann einige Minuten dauern)
stackhero service-wait-for --service="gitlab-runner"

# Service-Konfiguration inklusive generierter Zugangsdaten abrufen
stackhero service-configuration-get --service="gitlab-runner" --format=json