Ersten Container ausführen
Nachdem Docker Desktop auf unserem System läuft, können wir nun ein erstes Container auf unserem Rechner ausführen. Dazu werden wir die das mitinstallierte Docker CLI nutzen.
nginx Webserver ausführen
docker run --name mein-server \
-p 1080:80 \
-d nginx:alpine
docker run --name mein-server -p 1080:80 -d nginx:alpine
Unable to find image 'nginx:alpine' locally
alpine: Pulling from library/nginx
e1779b8a5a13: Download complete
81eecc9295df: Download complete
9afea992cb63: Pull complete
e6b7df06dc76: Pull complete
223f9efb3159: Pull complete
0bd713040ebb: Pull complete
d85e26d0c84d: Pull complete
2422bf732277: Pull complete
e350a0f963e3: Pull complete
29b7c987abf6: Pull complete
Digest: sha256:289decab414250121a93c3f1b8316b9c69906de3a4993757c424cb964169ad42
Status: Downloaded newer image for nginx:alpine
76c073965f57bc7351a7259b6e71b70a990cb42bcc4cda7ee41c6f38bb11963d
docker runstartet ein neues Container--name <eingener_container_name>gibt dem Container den Namenmein-server. Dies ist optional. Wird kein Name angegeben, “würfelt” Decker einen aus.-p 1080:80Durchreichen eines Ports aus dem Container (hier Port80des nginx Servers) zu dem Host-Port (hier1080)-dStarten Container als “Detached” (Hintergrundprozess), so dass die Kommandozeile weiter genutzt werden kann.nginx:alpineist der Image, das wir verwenden.nginxist dabei der Name des Images (Repository).alpineist ein Tag (Version).
In der Ausgabe sehen wir, dass Docker am Anfang das Image nicht hat (Unable to find image 'nginx:alpine' locally). Aus diesem Grund stößt dieser an, das Image aus dem Docker Hub herunterzuladen. Dies kann einige Zeit dauern, abhängig von der Internetverbindung und der Größe des Images. In unserem Fall ist das Image sehr klein (ca. 20MB).
Nun können wir über http://localhost:1080 auf unseren neuen Webserver zugreifen.

Container liefert Web-Inhalt
Container stoppen und löschen
docker stop mein-server
docker rm mein-server
nginx mit eigenen Inhalt ausführen
Statt der langweiligen Standardseite von nginx können wir auch diesen dazu bewegen, unsere eigen statische Seite auszuliefern. Dazu erstellen wir zuerst einen Ordner und legen da eine einfache HTML Seite ab.
Beispiel Seite finden Sie in dem verlinkten
GitHub Repository im Ordner nginx-site
docker run --name mein-server \
-p 1080:80 \
-v ./nginx-site:/usr/share/nginx/html:ro \
-d nginx:alpine
-v <ordner/pfad/auf/dem/host>:/usr/share/nginx/html:roMapping für Speicher (Volume)- der 2. Teil nach dem
:ist der Ordner innerhalb vom Container, das auf unseren lokalen Ordner gemappt werden soll. nginx erwartet Web-Inhalt in dem Ordner/usr/share/nginx/html roam Ende steht fürread only. D.h. der Container kann nur lesend auf unseren lokalen Ordner zugreifen.
- der 2. Teil nach dem
