Vagrant

Vagrant

Vagrant ist ein Open-Source-Tool von HashiCorp, das Entwicklern ermöglicht, virtualisierte Entwicklungsumgebungen portabel und reproduzierbar zu erstellen, zu verwalten und zu betreiben.

Das zentrale Problem, das Vagrant löst, ist das bekannte „Works on my machine“-Phänomen: Ohne Vagrant ist jeder Entwickler selbst dafür verantwortlich, Dutzende von Diensten wie Webserver, Datenbanken oder Cache-Systeme manuell zu installieren und zu konfigurieren – mit dem Ergebnis, dass sich jede Entwicklermaschine von der anderen und von der Produktionsumgebung unterscheidet.

Das Herzstück von Vagrant ist das sogenannte Vagrantfile: Es handelt sich um eine Ruby-basierte Konfigurationsdatei, in der VM-Spezifikationen wie Betriebssystem, Arbeitsspeicher, CPU, Netzwerkeinstellungen und Provisioning-Skripte definiert werden. Das Vagrantfile sorgt dafür, dass die gesamte Umgebung wiederholbar und versionierbar ist.

Der Workflow ist dabei denkbar einfach: Entwickler müssen lediglich das Repository auschecken und vagrant up ausführen – Vagrant startet dann alle benötigten VMs und richtet sie vollständig ein, ohne dass der Entwickler manuell konfigurieren muss. Mit vagrant destroy lässt sich die gesamte Umgebung sauber entfernen und bei Bedarf neu aufbauen.

Flexibilität durch Multi-Provider-Support: Vagrant unterstützt zahlreiche Provider wie VirtualBox, VMware, Hyper-V, Docker und Cloud-Dienste wie AWS, sodass Teams den für sie passenden Infrastrukturanbieter nutzen können, ohne ihren Workflow zu ändern.

Beim Provisioning – also der automatischen Konfiguration der VMs – ist Vagrant ebenfalls sehr offen: Unterstützt werden unter anderem Shell-Skripte, Ansible, Chef, Puppet, Docker und Salt.

Vagrant spiegelt Produktionsumgebungen wider, indem es dasselbe Betriebssystem, dieselben Pakete, Benutzer und Konfigurationen bereitstellt – und gibt Entwicklern dabei die Freiheit, ihren bevorzugten Editor, ihre IDE oder ihren Browser weiter zu nutzen.

Kurz gesagt: Vagrant ist das ideale Werkzeug für Teams, die Wert auf konsistente, automatisierte und reproduzierbare Entwicklungsumgebungen legen, aber nicht die Komplexität von Kubernetes-Umbegungen benötigen.

Als Experten für Open-Source-Infrastruktur unterstützt credativ Unternehmen dabei, mit Vagrant konsistente und reproduzierbare Entwicklungsumgebungen aufzubauen, um das klassische „Bei mir funktioniert’s“-Problem endgültig zu lösen. Wir begleiten Entwickler von der Erstellung maßgeschneiderter Vagrantfiles bis hin zur nahtlosen Integration in bestehende CI/CD-Pipelines und Configuration-Management-Workflows (wie Ansible oder Puppet). Durch gezieltes Consulting und Support stellt credativ sicher, dass Entwicklerteams effizienter arbeiten können und der Übergang von der lokalen Entwicklung zum produktiven Betrieb reibungslos verläuft.

Das Vagrant Logo stammt von Fco.plj, CC BY-SA 3.0, via Wikimedia Commons.

Vagrant Logo
Details
  • Lizenz: Business Source License 1.1
  • Erschienen: 2010
  • Herausgeber: HashiCorp
  • Webseite: Projekt-Seite
  • Source: GitHub
Gehört zu:

🏠 VirtualBox