docker run
Pakete und Laufzeiten
Aufruf
docker run [-d] [-p <host>:<container>] <image> [command]Erzeugt und startet jedes Mal einen neuen Container aus einem Image, zweimal ausgeführt gibt es also zwei, und einen bestehenden startet docker start; ohne -p ist nichts vom Host erreichbar, und ohne -v stirbt alles Geschriebene mit dem Container.
Häufige Optionen
| Option | Bedeutung |
|---|---|
| -d | run in the background and print the id |
| -p 8080:80 | publish a container port on the host |
| -it | interactive with a terminal, for a shell |
| --rm | delete the container when it exits |
| -v <host>:<path> | mount a host folder or named volume |
| -e KEY=value | set an environment variable |
| --name <name> | give it a name instead of a random one |
| --network <net> | attach it to a network |
Beispiele
docker run --rm -it ubuntu basha throwaway shell in a container
docker run -d -p 8080:80 --name web nginxnginx in the background, reachable on localhost:8080
docker run --rm -v "$PWD":/app -w /app node:22 npm testruns your tests in a container without installing node
Die Frage ist immer, was wohin gehört: in dieses Projekt oder auf die ganze Maschine.
So liest man das
- Eckige Klammern [ ] markieren einen Teil, den man weglassen kann.
- Drei Punkte … heißen: mehrere sind erlaubt.
- Optionen achten auf Groß- und Kleinschreibung — bei manchen Befehlen sind -r und -R verschieden.
Häufige Fragen
Q. Was macht docker run?
Erzeugt und startet jedes Mal einen neuen Container aus einem Image, zweimal ausgeführt gibt es also zwei, und einen bestehenden startet docker start; ohne -p ist nichts vom Host erreichbar, und ohne -v stirbt alles Geschriebene mit dem Container.
Q. Wie gibt man ihn ein?
docker run [-d] [-p <host>:<container>] <image> [command] — eckige Klammern markieren, was wegfallen darf.
Q. Wie viele Optionen lohnen sich?
Hier stehen 8; die vollständige Liste steht in man docker. Der Befehl gehört zu Pakete und Laufzeiten.
Verwandte Befehle
man-Seite: man docker-run