Microsoft und Docker arbeiten gemeinsam an neuen Methoden zum Bereitstellen von Containern in Azure.

Veröffentlicht am 27 Mai, 2020

Group Product Manager, Azure Developer Tools

Entwickler benötigen heute mehr Agilität als je zuvor, um ständig wachsenden Kundenanforderungen gerecht zu werden. Die Containerisierung bietet eine wichtige Möglichkeit, die Agilität zu erhöhen. Containeranwendungen werden auf eine Weise entwickelt, die konsistenter und reproduzierbarer ist. Dabei werden die gewünschte Infrastruktur, Abhängigkeiten und die Konfiguration für alle Phasen des Lebenszyklus als Code definiert. Anwendungen werden häufig auch zur Laufzeit schneller gestartet und beendet, was oft dazu beiträgt, dass sie in der Cloud schnell gestartet, beendet, aufskaliert und aktualisiert werden können.

Vor diesem Hintergrund haben wir heute bereits eine neue Partnerschaft zwischen Microsoft und Docker angekündigt, um Docker Desktop, Microsoft Azure und die Visual Studio-Produktlinie enger zu integrieren.  

Die integrierten Tools, Funktionen und Befehlszeilen-Hilfsprogramme von Docker Desktop bieten eine Möglichkeit, Azure nativ als Kontext festzulegen, um Container in der Cloud mit Kontext auszuführen und um die Ausführung in Azure-Containern mit einigen einfachen Befehlen zu unterstützen. Die Produktintegration beginnt mit der Fähigkeit, Azure Container Instances (ACI) zu erstellen. Dabei handelt es sich um eine Lösung für beliebige Szenarien, die in isolierten Containern ohne Orchestrierung betrieben werden kann.

Ein Beispiel soll zur Veranschaulichung neuer Produktintegrationen dienen. Wir verfügen über eine einfache TCP-basierte Python-Gameserver-App, mit der unter Verwendung von Docker Desktop bereits Builds und Ausführungen auf dem lokalen Computer des Entwicklers erstellt werden. Die Anwendung ist von einer schlanken Linux-Version und anderen Abhängigkeiten in „requirements.txt“ abhängig. Die Docker-Toolerweiterung in Visual Studio Code bietet einfache Befehle zum Erstellen von Builds und Ausführungen in Docker Desktop und zum anschließenden Pushen in eine private Containerregistrierung in Docker Hub. Die Oberfläche ist durch die Verwendung des neuen WSL2-Release besonders schnell.

DockerAnnouce1

Die aktualisierte Version von Docker Desktop, die später in diesem Jahr veröffentlicht wird, bietet native Befehle zur Erstellung eines Docker-Kontextes für Azure Container Instances:

$ docker context aci-create paulyuk/webapp-dev
$ docker context use paulyuk/webapp-dev

Kontexte sind hilfreich, um auf einfache Weise zwischen einer oder mehreren Umgebungen mit einem Docker-Host zu wechseln. Beispielsweise werden lokale (standardmäßige) Kontexte für „myapp-dev“ und „myapp-qa“ unterstützt. Der Kontext wird von der gesamten Docker-Toolkette (einschließlich der Docker.exe-CLI) berücksichtigt. Dadurch wird die Ausführung eines Containers in Azure einfach und konsistent mit der lokalen Ausführung, wobei derselbe vertraute Befehl verwendet wird:

$ docker run paulyuk/pythontcpgame:1.1

So ist die Bereitstellung eines Containers in Azure mit den Standardtools in Docker Desktop denkbar einfach. Darüber hinaus können Sie die gesamte Funktionalität mit Docker Desktop, Visual Studio, WSL2 und GitHub zusammenbringen, um einen cloudoptimierten Desktop zu erhalten. In der DockerCon LIVE 2020-Sitzung gehe ich näher auf Integrationen ein.

Wir freuen uns, die Zusammenarbeit mit Docker auszuweiten und die Oberfläche für Entwickler weiter zu verbessern.

Weitere Informationen

Weitere Informationen zur Partnerschaft finden Sie in dieser Pressemitteilung und in diesem Blogbeitrag von Docker. Nutzen Sie noch heute die aktuelle VS Code-Docker-Erweiterung mit Docker-Kontexten, Docker Desktop und der WSL2-Integration. Die Vorschau mit der ACI-Integration in Docker Desktop wird noch in diesem Jahr folgen.