Docker Init Befehl: Docker Projekte automatisch erstellen
Mit Docker Init kannst du im Handumdrehen ein Docker Projekt aufsetzen. Mit nur einem CLI Befehl docker init
generierst du dir alles, was du benötigst.
Docker hat die Art und Weiße, wie Entwickler ihre Software entwickeln, deployen und anderen Entwicklern zur Verfügung stellen völlig verändert! Durch den neuen Docker Init Befehl wird es Entwickler zukünftig noch leichter gemacht, Docker Projekte aufzusetzen, in dem das Erstellen der Konfigurationsdateien durch nur einen einzigen Befehl automatisiert wird.
TL;DR: docker init
dockerisiert deine Anwendung in wenigen Sekunden! 🙂
Docker Init
Das Command erzeugt drei Dateien in deinem Projekt:
- ein Dockerfile: enthält die Anweisungen zum Erstellen eines Docker-Images, das auf einem Container basiert.
- eine .dockerignore: listet Dateien und Verzeichnisse auf, die beim Erstellen des Images ignoriert werden sollen.
- eine compose.yaml: definiert die Dienste, Netzwerke und Volumes für die Orchestrierung von Docker-Containern mit Docker Compose.
- und eine README.Docker.md
Also alle Dateien, die für eine vollständige Docker App notwendig sind.
Um den Docker Init Befehl zu nutzen, benötigst du lediglich Docker Desktop > Version 4.18. Und natürlich ein nicht-dockerisiertes Projekt, also ein Projekt, für das noch keine Dockerfiles existieren.
Unterstützte Sprachen
Aktuell unterstützt der Befehl 7 Programmiersprachen:
- ASP.NET
- Go
- Java
- Node
- PHP
- Python
- Rust
Sollte ein Projekt aus keiner der Sprachen bestehen, wird das Dockerfile so eingerichtet, dass es einen möglichst allgemeingültigen Einstiegspunkt erstellt.
Ich bin mir aber sehr sicher, dass die Funktionen dieses Befehls in den neuen Versionen noch weiter ausgebaut werden, wir dürfen also gespannt bleiben.
Docker Init in Action
Kommen wir nun zur Sache und schauen uns den Befehl bei einer Node.js Anwendung in Action an.
Bekommst du einen Fehler beim Eingeben des Befehls? So behebst du den Docker Permission Denied Fehler.
> docker init
Anschließend wirst du durch eine Palette von Fragen geleitet.
? What application platform does your project use? Node ? What version of Node do you want to use? (20.5.1)
? What application platform does your project use? Node ? What version of Node do you want to use? 20.5.1 ? Which package manager do you want to use? [Use arrows to move, type to filter] > npm - (detected) yarn pnpm
? What application platform does your project use? Node ? What version of Node do you want to use? 20.5.1 ? Which package manager do you want to use? npm ? What command do you want to use to start the app? [tab for suggestions] (node index.js)
? What application platform does your project use? Node ? What version of Node do you want to use? 20.5.1 ? Which package manager do you want to use? npm ? What command do you want to use to start the app? node index.js ? What port does your server listen on? 3000
Und das ist auch schon alles. Wir erhalten die drei besagten Dateien, die wir für ein vollständiges Docker Projekt benötigen.
Um die Konfiguration zu überprüfen, führen wir den docker compose
Befehl aus: Läuft!
Und auch für einen einzelnen Docker Container funktioniert das Dockerfile. Wir erhalten einen laufenden Container für unsere Anwendung.
docker build -t docker-init-app . docker run -p 3000:3000 docker-init-app
Wie man andere Anwendungen containerisieren kann
Für eine optimale Nutzung von Docker ist es am besten, die Vorlage für die jeweilige Programmiersprache zu verwenden, die von docker init
bereitgestellt wird. Alternativ dazu bietet die Auswahl des Vorlagentyps „Other“ minimale Dateien, die für die Anpassung bereitstehen. Das kann hilfreich sein, um die grundlegende Docker Konfiguration besser zu verstehen und zu erweitern.
Warum du Docker Init nutzen solltest
In meinen Augen bietet der Befehl für Entwickler und Teams einige Vorteile:
- Beschleunigte Projektinitialisierung: Docker Init automatisiert die Erstellung aller Konfigurationsdateien. Dadurch entfällt die zeitaufwändige manuelle Erstellung dieser Dateien und Entwicklungsprozesse werden beschleunigt.
- Konsistenz und Standardisierung: Wie auch CI/CD Tools stellt die Verwendung des Docker Init Befehls sicher, dass alle Projekte eine konsistente und standardisierte Docker Konfiguration haben. Dies führt zu weniger Konfigurationsfehlern und einer verbesserten Zusammenarbeit im Team.
- Geringere Fehleranfälligkeit: Docker Init hilft, Fehler in der Docker-Konfiguration zu minimieren, indem Best Practices und empfohlene Strukturen für Docker-Projekte implementiert werden. Dies führt zu robusteren und zuverlässigeren Anwendungen.
Psssst! Kennst du eigentlich den Unterschied zwischen (Docker) Containern und virtuellen Maschinen (VMs)?
Fazit
Insgesamt unterstreicht der Docker Init Befehl die Position von Docker als treibende Kraft in der Softwareentwicklung. Entwickler können dank dieses Befehls Docker Projekte in Rekordzeit aufsetzen und das Einrichten von Konfigurationsdateien auf ein Minimum reduzieren.
Wie fandest du diesen Beitrag?
-
Pingback: GitHub Container Registry: So pushst du Docker Images zu GitHub
-
Pingback: Docker vs. VM (virtuelle Maschine): Das sind die Unterschiede
-
Pingback: Docker Permission Denied - So behebst du den Fehler