La commande docker container run possède de très nombreuses options. Elle permet d'exécuter une commande dans un nouveau conteneur.
Ci-dessous quelques options usuelles et des exemples de création de conteneurs:
Option | Description |
---|---|
–tty, -t | Allouer un pseudo terminal au conteneur. |
–interactive, -i | Conserve le flux stdin ouvert. |
–detach, -d | Exécution du conteneur en arrière plan. |
–volume, -v | lier, monter un volume entre l’hôte et le conteneur |
–publish, -p | Publier, connecter les ports du conteneur et de l’hôte. |
–env, -e | Définir les variables d'environnement. |
–name | Définir un nom pour le conteneur. |
–rm | Supprime le conteneur en fin d'exécution. |
–workdir, -w | définir le répertoire de travail dans le conteneur. |
–link | Ajouter un lien vers un autre conteneur. |
docker container run --interactive --tty --rm busybox
Dans l' exemple ci-dessus, on crée un conteneur en mode interactif. Il sera supprimé en fin d'exécution. L'image utilisée est busybox, comme la version n'est pas spécifiée le tag latest sera utilisé.
docker container run --tty -v $(pwd):/usr/local/bin -w /usr/local/bin busybox sh ./script.sh
Dans l'exemple ci-dessus on utilise l'option -v pour monter le répertoire courant de l’hôte contenant le fichier script.sh sur le répertoire /usr/local/bin du conteneur. Le répertoire de travail sur le conteneur est définit via l'option -w et le script script.sh est lancé dans le conteneur.
docker container run --detach --env APP_VERSION=0.33 \ --volume $(pwd):/usr/local/bin \ --workdir /usr/local/bin \ busybox:latest sh ./script.sh
Dans l'exemple ci-dessus, le conteneur est lancé en arrière plan, une variable d'environnement APP_VERSION est créée, elle pourra être exploitée par le script.