Was ist Docker?
Docker ist eine Container Plattform für Software und Apps. Docker ist eine Container Plattform für Software und Apps. Softwareentwickler nutzen Docker für die Zusammenarbeit mit anderen Entwicklern und um Softwareentwicklung einfach und portabel zu gestalten.
Dabei löst Docker für den Entwickler das allgegenwärtige Probleme „aber die Software läuft auf meiner Maschine“ bei Softwareerstellung im Team mit anderen Entwicklern zu eliminieren.
Was ist eine Containertechnologie?
Die Containertechnologie hebt also die Abhängigkeiten der Anwendungen zu einzelnen Systembestandteilen auf so dass sich Systemlösungen komfortabel von System A zu System B verlagern lassen. Mit dem virtuellen Container kapselt Docker die Anwendung und ermöglicht dessen Betrieb auf gänzlich unterschiedlichen Systemen wie beispielsweise in einer Linux- oder Windows-Umgebung.
Vergleichbar mit einer System-Bibliothek kapselt der Dockercontainer die benötigten Ressourcen und stellt quasi eine sichere und leicht portierbare Betriebsumgebung dar.
Was enthaelt ein Dockercontainer?
Ein Dockercontainer enthält nur die eigentliche Softwareanwendung und deren systembedingten Abhängigkeiten. Ein Container wird auf einem Dockersystem als isolierter Prozess auf dem Host-System ausgeführt. Der Docker-Container teilt sich alle erforderlichen Systemressourcen mit den anderen Docker-Containern desselben Systems. Durch das Konzept strikter Isolation können sich viele Container dieselben Ressourcen effizient teilen. Dabei ist exakt definierbar, welcher Docker-Container wieviel Ressourcen nutzt.
Welche Vorteile bieten Container und die Container-Technologie?
Container bieten wertvolle Vorteile für die laufende Entwicklung von Software:
- maximale Portabilität
- höchste Flexibilität
- Standardisierung
- Kostenreduktion
- vielfältig nutzbare Schnittstellen
Wofuer kann ich Docker nutzen?
Mit dem Dockercontainer und Containerumgebungen lassen sich die unterschiedlichen IT-Szenarien virtualisieren. Für die Softwareentwicklung spielt die Containertechnologie bereits eine unverzichtbare Rolle um Software leicht portierbar zu gestalten und eine Vielzahl unterschiedlicher Entwickler – losgelöst von ihrer Arbeitsumgebung oder dem Einsatzort – in die Softwareentwicklung mit einzubeziehen.
Wie erzielt Docker hoechste Flexibilität?
Als OpenSource Projekt für die automatisierte Bereitstellung von Softwareanwendungen nutzt Docker gezielt Container um Systemkomponenten so einfach wie möglich portierbar zu gestalten. Der Containeransatz isoliert erforderliche Ressourcen wie Prozessor, Speicher oder Netzwerkkomponenten mit Hilfe von virtuellen Maschinen. Somit sind Applikationen autonom von Systemkomponenten direkt nutzbar.
Docker Schritt fuer Schritt
- Docker starten
- Einfache Dockercontainer nutzen
- Dockerfiles kennenlernen – Dockerfiles ist die grundlegende Konstruktionsumgebung für Docker Container
- Container Distribution: Docker-Registries verwenden um Docker Container zu veröffentlichen
Dockercontainer bieten maximale Flexibilitaet und hohen Nutzen
Dockercontainer bietet maximale Flexibilität um unterschiedliche Systemkomponenten portabel zu gestalten. Dabei ist Docker weitgehend einfach zu konfigurieren.
Die Docker-Toolbox nutzen
Die Docker Toolbox ist ein Installer um schnell und unkompliziert eine Docker-Umgebung auf einem Computer zu installieren. Die Docker-Toolbox umfasst eine minimale boot2docker VM sowie weitere Docker-Tools wie Compose und Swarm.
Docker Client docker binary
- Docker-Machine docker-machine binary
- Docker-Compose docker-compose binary
- Kitematic – Desktop GUI for Docker
- Docker-Quickstart Terminal app
Sobald die Docker-Toolbox installiert ist, kann die Dockersoftware über das Docker-QuickStart Terminal genutzt werden.
Docker auf dem Mac
Auf einem Mac werden die Binaries standardmäßig im Verzeichnis /usr/local/bin installiert. Mit der Docker-Toolbox ist eine Dockerinstallation für die Default Machine mit der IP 192.168.99.100 zur sofortigen Nutzung konfiguriert. Für weitere Hilfe mit der Dockersoftware informieren Sie sich bitte direkt unter https://docs.docker.com.
Cloud-Technologien und agile Softwareentwicklung
Einer der größten Vorteile von containerisiertem Deployment ist die beliebige Wiederverwendbarkeit und leichte Portierbarkeit. Dabei lassen sich enthaltene Softwarebibliotheken und Komponenten beliebig und vor allem schnell austauschen.
Moechtest Du mehr ueber Softwareentwicklung & Programmierung lernen?
Mit unserem Projekt Rock the Prototype unterstützen wir aktiv das Prototyping von Software. Am besten lernst Du gute Software zu entwickeln indem Du Dir einen iterativen, prototypischen Softwareentwicklungsprozess aneignest.
Unser kostenloses Angebot fuer Dich: Rock the Prototype!
Unsere Community Initiative Rock the Prototype bietet Dir – kostenlos – eine Chance neue Technologien mit anderen im Team zu entwicklen und in der Praxis zu erproben.
Das darfst Du von Rock the Prototype erwarten:
Die Community Rock the Prototype ist Deine Chance um…
Deine Programmierfähigkeiten zu erweitern,
indem Du gemeinsam mit anderen
lernst technische Herausforderungen effektiv zu lösen,
neue Ideen und Fähigkeiten entwickelst und
wertvolle neue agile Methoden & Konzepte lernst
Lass Dich von anderen Entwicklern inspirieren!
Unser Motto ist: Coding is fun – im Team entsteht der beste Code!
Du wirst neue Konzepte und Best Practices entdecken,
Deine IT-Skills vertiefen und
Neues erlernen!