Accueil·Commandes du terminal

docker run

Paquets et runtimes

Syntaxe

docker run [-d] [-p <host>:<container>] <image> [command]

Crée et démarre un nouveau conteneur à partir d'une image à chaque appel : lancé deux fois, il en existe deux, et pour relancer un conteneur arrêté c'est docker start ; sans -p rien n'est joignable depuis l'hôte, et sans -v ce qui est écrit disparaît avec le conteneur.

Options courantes

OptionSignification
-drun in the background and print the id
-p 8080:80publish a container port on the host
-itinteractive with a terminal, for a shell
--rmdelete the container when it exits
-v <host>:<path>mount a host folder or named volume
-e KEY=valueset an environment variable
--name <name>give it a name instead of a random one
--network <net>attach it to a network

Exemples

docker run --rm -it ubuntu bash

a throwaway shell in a container

docker run -d -p 8080:80 --name web nginx

nginx in the background, reachable on localhost:8080

docker run --rm -v "$PWD":/app -w /app node:22 npm test

runs your tests in a container without installing node

La question est toujours quoi va où : dans ce projet, ou sur la machine entière.

Comment lire

  • Les crochets [ ] marquent une partie facultative.
  • Les points de suspension … signifient qu’on peut en mettre plusieurs.
  • Les options sont sensibles à la casse : sur certaines commandes, -r et -R ne font pas la même chose.

Questions fréquentes

Q. Que fait docker run ?

Crée et démarre un nouveau conteneur à partir d'une image à chaque appel : lancé deux fois, il en existe deux, et pour relancer un conteneur arrêté c'est docker start ; sans -p rien n'est joignable depuis l'hôte, et sans -v ce qui est écrit disparaît avec le conteneur.

Q. Comment l’écrire ?

docker run [-d] [-p <host>:<container>] <image> [command] — les crochets marquent ce qui est facultatif.

Q. Combien d’options valent la peine ?

Il y en a 8 ici ; la liste complète est dans man docker. Cette commande relève de Paquets et runtimes.

Commandes liées

page man: man docker-run