GitLab CI Runner im Docker Container [GitLab Runner] [Docker] [PHP] [NodeJS] [LESSCSS]


Ich habe ja bereits berichtet, dass ich meine GitLab-Installation in einen Docker-Container verfrachtet habe. Nun möchte ich passend dazu natürlich auch meine GitLab-Runner in Docker-Containern laufen lassen. Was mir hierbei gut gefällt: Das restliche System ist von den für Build-Prozesse notwendigen Tools nicht zugemüllt.

GitLab Runner im Docker-Container laufen lassen

Wie in der originalen Anleitung zu lesen, ist es gar nicht schwer, einen GitLab-Runner im Docker-Container auszuführen:

Doch ich will natürlich noch einige zusätzliche Tools für PHP-Entwicklung in den Runner einbinden.

Ein PHP-Optimierter GitLab-Runner

Das tolle an Docker: Auf bestehenden Images aufbauen und diese erweitern. Mit einem Dockerfile.

Ich habe also mein eigenes Dockerfile geschrieben:

Kurz erklärt: Was hier passiert ist quasi das originale Docker-Kommando (siehe ganz oben). Es wird also das Docker-Image „gitlab/gitlab-runner:latest“ geladen. Dann werden zusätzliche Kommandos ausgeführt.

  1. Die Liste der verfügbaren Programme aktualisieren
  2. Neue Pakete installieren: php5, php5-pear, zip, curl, php5-mcrypt, NodeJS, npm und ncftp
  3. Das mcrypt-PHP-Modul aktivieren
  4. nochmals vergügbare Programme aktualisieren
  5. Neue Pakete installieren: php5-xsl
  6. NodeJS passend verlinken
  7. Den LessCSS-Precompiler über NodeJS installieren
  8. phpmd installieren
  9. phploc installieren
  10. Composer installieren
  11. phpcpd installieren
  12. phpdox installieren

Mit dieser Palette an Tools kann ich meine Projekte optimal bauen. Jetzt muss ich das Docker-Image nur noch erstellen und ausführen lassen:

Nun läuft mein PHP-Optimierter GitLab-Runner. Jetzt muss er nur noch registriert werden, dazu führt man folgendes Kommando aus und befolgt die Anweisungen:

Meinen Runner nutzen

Wenn Du dich um das Dockerfile nicht kümmern möchtest, aber meine Tool-Palette cool findet, kannst Du genau diesen Runner auf jedem Server installieren, dazu nutzt du statt dem obigen docker-build Kommande folgendes:

Nun zieht dein Docker sich das Dockerfile aus meinem öffentlichen Repository und baut das Docker-Image.

Dieser Beitrag wurde am von in Allgemein veröffentlicht. Schlagworte: , , , , , .

Über Oliver Lippert

Oli ist gelernter Systementwickler (FFA - ausgeschrieben sprengt es den Rahmen) , 1990 Geboren und inzwischen glücklich verheiratet. Seid mehr als 10 Jahren WebEntwickler, seit 2011 auf professioneller Ebene. 2012 begann Oli ein Nebengewerbe im Bereich WEB (Wartung, Entwicklung, Bereitstellung) und hat inzwischen eine vielzahl an Projekten zuverlässig und kundenorientiert abgewickelt, betreibt eigene WebServer und Hostet eine vielzahl an Webseiten.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.