Devcontainer – Die IDE in einer Schublade
Das Installieren von Computern war um das Jahr 2000 herum eine Arbeit von einigen Stunden. Für das Betriebssystem und z.B. ein Office-Paket. Viele Disketten oder etwas weniger CD-Roms. Das Aufbauen einer Entwicklungsumgebung wie VisualStudio und einem Datenbankserver, alles in der richtigen Reihenfolge und mit den richtigen Einstellungen konnte einen halben bis ganzen Tag dauern. Es dauerte also schon eine ganze Weile, bis man mit dem Entwickeln von Software anfangen konnte.
Heute gibt es Paket-Manager und Konfigurations-Werkzeuge, so dass das Aufsetzen von einer IDE schnell und automatisch läuft. Es bleibt der Nachteil, dass man einen Entwicklungsrechner aufsetzt, der für eine konkrete Art von Entwicklung eingestellt wird.
Seit einigen Jahren besteht die Möglichkeit, IDEs in virtuellen Maschinen zu installieren. Dann kann das Hauptsystem sauber bleiben.
Durch Devcontainer geht es noch weiter. Statt virtuellen Maschinen nur noch Container, in dem die IDE aufgesetzt wird. Die Konfiguration wird definiert in einer devcontainer.json und gegebenenfalls in einem Docker-File. Das ist Infrastructure as Code, kein Geklicke und Getippe mehr. Die Installation passiert dann beim Bauen des Containers automatisch und kann, wenn man die Konfiguration aus git-Repositorys holt, beliebig oft auf verschiedensten Rechnern wiederholt werden. Was wie zusammengestellt wird, steht, wie gesagt, im Konfigurations-Code.
Von Null hin zu einer IDE, mit der man Software entwickeln kann, dauert es also nur noch einige Minuten. Und die krummen Einstellungen stecken im Container. Wenn man mit dem Entwickeln aufhört, stoppt man den Container. Die Schublade mit den „Basteleien“ macht man zu. Und drum herum bleibt alles sauber. Wie beim Bastelkeller. Der Dreck bleibt dort und nicht in der Wohnung.
https://code.visualstudio.com/docs/devcontainers/containers



Schreibe einen Kommentar