So erhalten Sie das beste Docker-Erlebnis unter Windows.

Das Windows-Subsystem für Linux 2 ist ein phänomenales Tool für Windows 10 und 11 und lässt sich nahtlos in Docker integrieren. Als Entwickler ist es wichtig zu verstehen, was diese Software bietet und wie Sie Ihr Docker-WSL 2-Setup optimal nutzen können.

Was ist Docker?

Docker ist eine Open-Source-Plattform, die es Entwicklern ermöglicht, ihre Anwendungen innerhalb eines Containers effizient zu erstellen, bereitzustellen und auszuführen. Alle Abhängigkeiten sind gebündelt, sodass Ihr Projekt problemlos in jeder Umgebung bereitgestellt werden kann.

Docker ist bei vielen Containerisierungsplattformen sehr beliebt, da es zuverlässig, funktional und hochgradig skalierbar ist. Es läuft auf der Docker-Engine, einem wesentlichen DevOps-Tool, das eine saubere und schlanke Umgebung für Tests und Bereitstellung bietet. Docker ähnelt einer virtuellen Maschine, virtualisiert jedoch das Betriebssystem und nicht die zugrunde liegende Hardware.

Für Softwareentwickler optimiert Docker den Arbeitsablauf, indem individuelle Container für verschiedene Microservices erstellt werden, die die erforderlichen Abhängigkeiten, Bibliotheken und Konfigurationen enthalten. Jeder Microservice-Container ist isoliert und individuell skalierbar.

instagram viewer

So verwenden Sie Docker auf WSL 2

Docker ist mit allen gängigen Betriebssystemen wie Windows, macOS und Linux kompatibel. Wenn Sie Windows 10 oder 11 verwenden, können Sie Docker über Docker Desktop und verwenden Integrieren Sie es in das Windows-Subsystem für Linux 2 für verbesserte Leistung. Sie können Docker Desktop für Windows von herunterladen offizielle Docker-Website.

Das Windows-Subsystem für Linux (WSL) ist eine wertvolle Funktion, die es Windows-Benutzern ermöglicht, Linux-Distributionen wie Ubuntu und Kali auszuführen, ohne eine virtuelle Maschine oder Dual-Boot einzurichten.

Das bedeutet auch Windows-Benutzer können Linux-Befehlszeilentools direkt verwenden, Anwendungen und Dienstprogramme ohne zusätzliche Installationsschritte. Die neueste Version von WSL, WSL 2, bietet mehr Stabilität und einen dedizierten Linux-Kernel.

Da Docker-Container robust sind, können Sie sie sogar so konfigurieren, dass sie Ihren Server hosten; Nginx-Docker-Container werden häufig als Webserver verwendet. Darüber hinaus können Sie Docker auf verschiedene andere Arten verwenden:

  • Führen Sie Linux-Distributionen einfach aus
  • Richten Sie zu Lern- oder Testzwecken einen Webserver ein
  • Portable Bereitstellungsanwendungen
  • Bündeln Sie die Anwendung in einer einzigen Bilddatei
  • Vereinfachte CI/CD-Pipeline

Sie müssen sich mit den Best Practices für die Verwendung von Docker mit dem Windows-Subsystem für Linux 2 vertraut machen, genau wie mit jeder anderen Plattform oder jedem anderen Tool. Als Entwickler kann ich aus eigener Erfahrung sagen, dass Sie viel produktiver und effizienter werden, wenn Sie die folgenden Tipps in Ihren Workflow integrieren.

1. Integrieren Sie VS Code in WSL 2

Visual Studio Code ist eine beliebte IDE, die aufgrund ihrer unglaublichen Funktionen, Community und Erweiterungen beliebt ist. Als Entwickler haben Sie die Möglichkeit, Visual Studio Code für die App-Entwicklung auf einer Windows-Plattform zu verwenden Auch das Ausführen dieser Apps auf einem Linux-Kernel ist unglaublich vorteilhaft und fast unglaublich Besonderheit.

Wenn Sie VS Code in das Windows-Subsystem für Linux integrieren, können Sie den speziellen Linux-Kernel nutzen, um die plattformübergreifende Kompatibilität zu verbessern. Sie können Ihren Arbeitsablauf weiter optimieren, indem Sie das integrierte Terminal in VS Code mit WSL 2 verwenden.

Zu Richten Sie VS Code mit WSL 2 unter Windows ein, können Sie die konfigurieren WSL Erweiterung vom VS Code Marketplace herunterladen und loslegen.

2. Verwenden Sie das WSL 2-Dateisystem

Um Ihre Docker-Container ordnungsgemäß auszuführen, ist es wichtig, dass Sie sich auf das Dateisystem Ihrer WSL 2-Distribution verlassen und sich nicht stark auf das native Windows-Dateisystem verlassen. Während meiner Erfahrung mit Docker-Containern in WSL 2 habe ich festgestellt, dass es besser ist, Ihre Projektdateien in WSL zu speichern.

3. Verwenden Sie native Linux-Skripts

Viele containerisierte Projekte, an denen Sie arbeiten, werden wahrscheinlich mit Skripts für die Automatisierung unter Linux geliefert. Normalerweise werden diese Skripte zuerst für Linux entwickelt, und Windows-Entwickler haben keine Priorität.

Mit WSL 2 kann Ihr gesamtes Team dieselben Linux-Automatisierungsskripts verwenden, und Sie müssen sich keine Gedanken über die Pflege von Windows-kompatiblen Automatisierungsskripts für Ihr Team machen.

4. Konfigurieren Sie BuildKit für verbesserte Sicherheit und Leistung

BuildKit ist ein Open-Source-Toolkit, das den traditionellen Docker-Build-Prozess in Bezug auf Leistung und Sicherheit verbessert; Es ist direkt in Docker integriert, sodass Sie es nicht separat installieren müssen.

Wenn Sie die aktivieren BuildKit Standardmäßig stellen Sie sicher, dass Ihre Container mit dem BuildKit-Toolkit erstellt werden, wodurch Sie mehr Sicherheit, Parallelität, Flexibilität und Caching erhalten.

Um BuildKit standardmäßig zu aktivieren, sollten Sie die folgenden Änderungen an der Konfigurationsdatei ~/.profile vornehmen:

Export DOCKER_BUILDKIT=1.

5. Richten Sie Ressourcenlimits ein

Wenn Sie das WSL 2-Backend in Docker Desktop integrieren, gewähren Sie Docker Zugriff auf alle Ihre CPU-Ressourcen. Dadurch wird die Leistung für ressourcenintensive Container verbessert.

In einigen Fällen weist ein Container jedoch möglicherweise viel überschüssigen Speicher zu, wodurch kritische Betriebssystemprozesse abstürzen. Sie werden dies eher erleben, wenn Sie Datenbankcontainer oder einen Caching-Microservice verwenden.

Glücklicherweise können Sie Docker-Container konfigurieren, um die Systemspeicher- und CPU-Auslastung zu begrenzen. Sie sollten bei der Konfiguration des Systemspeichers immer vorsichtig sein, selbst ein kleiner Fehler kann erhebliche Folgen haben. Sie können sich auf die beziehen offizielle Docker-Dokumentation für eine ausführlichere Anleitung zur Begrenzung der von einem Docker-Container verbrauchten Arbeitsspeicher- und CPU-Ressourcen.

6. Zwischengespeicherten Speicher wiederherstellen

Wenn Sie einen Docker-Container in WSL 2 ausführen, sollte sein Speicher freigegeben werden, sobald der Container beendet wird. Leider neigt der Kernel des Betriebssystems dazu, Daten im Cache zu halten; Das bedeutet, dass der von WSL 2 zurückgewonnene effektive Arbeitsspeicher nicht ausreicht.

Sie können den gesamten Arbeitsspeicher wiederherstellen, der unnötigerweise als Cache verwendet wird, indem Sie den folgenden Befehl über root in WSL 2 ausführen:

Echo 1 > /proc/sys/vm/drop_caches

Werden Sie intelligenter mit WSL 2

Die WSL 2 ist die beste Funktion für Windows-basierte Entwickler und verändert die Art und Weise, wie Entwickler Docker verwenden, vollständig. Entwickler müssen die Best Practices für die Verwendung von Docker mit WSL verstehen, um Leistung, Sicherheit und Workflow-Flexibilität zu verbessern.