Neuigkeiten von trion.
Immer gut informiert.

Artikel in der Kategorie 'ansible'

Jenkins Buildslave für Docker 18 Aug

Geschrieben von Thomas Kruse am 18. August 2017
Docker

Bei der Nutzung von eigenen Docker-Images stellt sich früher oder später die Frage, wie eine sinnvolle Build-Automatisierung am besten umgesetzt wird. Der Docker-Host, auf dem die Images gebaut werden, läuft früher oder später in Probleme durch verwaiste Volumes, Image-Layer und ganze Images. Soll auch der Buildserver als Docker-Container betrieben werden, so wird die Situation noch etwas komplizierter: Auf keinen Fall soll versehentlich ein Container während des Builds oder sogar der Container des Buildservers selbst "aufgeräumt" werden.

Damit ergeben sich im Prinzip folgende Optionen

  • Sehr sorgfältig erstellte Clean-Up Jobs

  • Verwendung von Docker-in-Docker zur Isolation des Docker-Image Builds

  • Verwendung eines speziellen Build-Slave, der eine Docker Buildumgebung bereitstellt und jederzeit entsorgt und neu erstellt werden kann

Die zuletzt genannte Option wird im folgenden exemplarisch mit Jenkins, Ansible und Vagrant/VirtualBox vorgestellt. Vagrant dient dabei lediglich zur Veranschaulichung, in produktiven Umgebungen wird man auf Cloud-Resourcen oder VMware ESX zurückgreifen.

Los geht's!

Bitte teilen Sie uns mit, wie wir Sie am besten erreichen können.