Accueil·Commandes du terminal

docker exec

Paquets et runtimes

Syntaxe

docker exec -it <container> <command>

Lance un autre processus dans un conteneur déjà en marche ; il échoue sur un conteneur arrêté, et les images slim n'ont pas de bash, on entre donc avec sh.

Options courantes

OptionSignification
-itinteractive terminal, for a shell
-u <user>run as another user, e.g. root
-w <dir>start in that directory
-e KEY=valueset a variable for this process only
-drun it in the background

Exemples

docker exec -it web bash

a shell inside a running container

docker exec -u root -it web sh

as root, and sh because slim images have no bash

docker exec -it db psql -U postgres

runs a client that lives inside the container

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 exec ?

Lance un autre processus dans un conteneur déjà en marche ; il échoue sur un conteneur arrêté, et les images slim n'ont pas de bash, on entre donc avec sh.

Q. Comment l’écrire ?

docker exec -it <container> <command> — les crochets marquent ce qui est facultatif.

Q. Combien d’options valent la peine ?

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

Commandes liées

page man: man docker-exec