Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
docker:utiliser [2019/09/02 22:30] techer.charles_0870019y.campus.lyceeconnecte.fr créée |
docker:utiliser [2019/09/02 23:02] techer.charles_0870019y.campus.lyceeconnecte.fr |
||
---|---|---|---|
Ligne 39: | Ligne 39: | ||
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
+ | </ | ||
Ce qu’il faut retenir de l’exécution de cette commande : | Ce qu’il faut retenir de l’exécution de cette commande : | ||
- | • La première ligne indique que l’image du conteneur ' | + | * La première ligne indique que l’image du conteneur |
- | • L’image recherchée est alors tirée (pull) de Docker Hub depuis Internet. | + | |
- | • Une explication des étapes réalisées est indiquée : le client Docker, la session de terminal de votre serveur Ubuntu, contacte le daemon Docker du serveur Ubuntu (le service Docker) qui tire l’image du conteneur depuis Docker Hub, crée un container, exécute ce qui est prévu dans l’image du conteneur (la production du texte à afficher) et envoie cette sortie texte vers le client Docker votre terminal. | + | |
- | • Le conteneur est ensuite arrêté automatiquement car le traitement prévu s’est effectué, l’affichage du texte et rien d’autre. | + | |
- | Afficher les images Docker présentes sur la machine | + | ==== |
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
REPOSITORY | REPOSITORY | ||
hello-world | hello-world | ||
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
+ | </ | ||
+ | Vous pouvez vérifier la présence de l’image qui a été tirée (pull) de Docker Hub et stockée sur votre serveur. Docker gère un **cache** des images sur la machine. Lors du prochain démarrage d’une instance de conteneur sur la même image il n’y aura pas de nouveau téléchargement sauf si elle a été modifiée entre-temps. | ||
- | Vous pouvez vérifier la présence de l’image qui a été tirée (pull) de Docker Hub et stockée sur votre serveur. Docker gère un cache des images sur la machine. Lors du prochain démarrage d’une instance de conteneur sur la même image il n’y aura pas de nouveau téléchargement sauf si elle a été modifiée entre-temps. | + | <WRAP center round info> |
- | + | **INFORMATION**\\ | |
- | INFORMATION | + | |
Pour en savoir plus sur une image il suffit de faire une recherche sur Docker Hub. | Pour en savoir plus sur une image il suffit de faire une recherche sur Docker Hub. | ||
Pour le conteneur hello-world : https:// | Pour le conteneur hello-world : https:// | ||
+ | </ | ||
- | Explication des tags | + | **Explication des tags** |
- | • Le TAG associé à l’image ubuntu est latest et est le marqueur de version de l’image. | + | |
- | • IMAGE ID est l’identifiant unique de l’image. | + | * **IMAGE ID** est l’identifiant unique de l’image. |
- | • CREATED est la date de création de l’image publiée sur le site Docker Hub. | + | * **CREATED** est la date de création de l’image publiée sur le site Docker Hub. |
- | • SIZE est sa taille virtuelle, c’est-à-dire de la couche logicielle téléchargée. | + | * **SIZE** est sa taille virtuelle, c’est-à-dire de la couche logicielle téléchargée. |
+ | |||
+ | ==== Lister les conteneurs actifs ==== | ||
- | | ||
L’image du conteneur hello-world est présente sur votre serveur mais après le lancement d’un conteneur basé sur cette image, vous avez retrouvé l’invite de commandes de votre serveur. Le conteneur lancé s’est ensuite arrêté automatiquement. Mais existe-il toujours ? | L’image du conteneur hello-world est présente sur votre serveur mais après le lancement d’un conteneur basé sur cette image, vous avez retrouvé l’invite de commandes de votre serveur. Le conteneur lancé s’est ensuite arrêté automatiquement. Mais existe-il toujours ? | ||
- | Pour constater que le conteneur lancé est bien arrêté vous pouvez visualiser | + | Pour constater que le conteneur lancé est bien arrêté vous pouvez visualiser les conteneurs actifs : |
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
CONTAINER ID IMAGE COMMAND | CONTAINER ID IMAGE COMMAND | ||
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
+ | </ | ||
+ | Le conteneur | ||
- | Le conteneur | + | ==== Lister tous les conteneurs y compris ceux qui sont inactifs ==== |
- | | ||
Relancez le conteneur hello-world. Vous pouvez à nouveau vérifier que celui n’est pas actif après l’affiche du texte prévu. | Relancez le conteneur hello-world. Vous pouvez à nouveau vérifier que celui n’est pas actif après l’affiche du texte prévu. | ||
- | Visualisez maintenant tous les conteneurs créés, qu’ils soient actifs ou non | + | Visualisez maintenant tous les conteneurs créés, qu’ils soient actifs ou non : |
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
CONTAINER ID IMAGE | CONTAINER ID IMAGE | ||
9bbd425c86f4 hello-world "/ | 9bbd425c86f4 hello-world "/ | ||
ae50ecb3a66d hello-world "/ | ae50ecb3a66d hello-world "/ | ||
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
- | + | </ | |
- | Les 2 conteneurs basés sur la même image hello-world, | + | Les 2 conteneurs basés sur la** même image hello-world**, sont bien **présents** mais **arrêtés** sans erreur normale (code de sortie 0) comme le montre le champ STATUS : Exited (0). Le premier conteneur s’est arrête il y a 1 seconde, le 2ème il y a 47 secondes. |
Chaque conteneur : | Chaque conteneur : | ||
- | • possède un identifiant de conteneur CONTAINER ID, | + | |
- | • et un nom, NAMES, qui a été généré par de démon Docker. | + | * et un nom, **NAMES**, qui a été généré par de démon Docker. |
- | La colonne COMMAND nous renseigne sur le processus qui avait été lancé, à savoir un script hello. | + | La colonne |
- | 3.B Comprendre le système de couche logicielle des images Docker | + | ===== Comprendre le système de couche logicielle des images Docker |
- | Récupérer une image dans sa dernière version | + | |
- | btssio@ubuntudocker: | + | ==== Récupérer une image dans sa dernière version |
+ | <code shell> | ||
+ | btssio@ubuntudocker: | ||
Using default tag: latest | Using default tag: latest | ||
latest: Pulling from library/ | latest: Pulling from library/ | ||
Ligne 103: | Ligne 113: | ||
Status: Downloaded newer image for ubuntu: | Status: Downloaded newer image for ubuntu: | ||
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
+ | </ | ||
- | + | Le **TAG** est latest par défaut si vous ne précisez pas la version du conteneur voulu. | |
- | Le TAG est latest par défaut si vous ne précisez pas la version du conteneur voulu. | + | Cette image ubuntu est une **image officielle** ; elle n’est pas préfixée et vous pouvez avoir des informations sur Docker hub. |
- | Cette image ubuntu est une image officielle ; elle n’est pas préfixée et vous pouvez avoir des informations sur Docker hub. | + | |
+ | {{ : | ||
Cette image est basée sur quatre couches logicielles : | Cette image est basée sur quatre couches logicielles : | ||
- | … | + | <code shell> |
+ | … | ||
f476d66f5408: | f476d66f5408: | ||
8882c27f669e: | 8882c27f669e: | ||
Ligne 118: | Ligne 129: | ||
f5029279ec12: | f5029279ec12: | ||
… | … | ||
+ | </ | ||
+ | |||
+ | <WRAP center round info> | ||
+ | **INFORMATION**\\ | ||
+ | Le chargement de ce conteneur **ubuntu** et des couches logicielles nécessaires a lieu **une fois pour toutes**. Tous les lancements de conteneur suivant se baseront sur cette image, y compris - et c’est une des grands avantages de l’architecture par couches - toutes les images qui se trouvent sur Docker Hub et qui ont été construites à partir de cette image ubuntu. Et il existe sur Docker Hub de nombreuses images basées sur Ubuntu qui est une distribution de base fréquemment utilisée pour les images Docker. | ||
+ | </ | ||
- | |||
- | INFORMATION | ||
- | Le chargement de ce conteneur ubuntu et des couches logicielles nécessaires a lieu une fois pour toutes. Tous les lancements de conteneur suivant se baseront sur cette image, y compris - et c’est une des grands avantages de l’architecture par couches - toutes les images qui se trouvent sur Docker Hub et qui ont été construites à partir de cette image ubuntu. Et il existe sur Docker Hub de nombreuses images basées sur Ubuntu qui est une distribution de base fréquemment utilisée pour les images Docker. | ||
Lancez un conteneur Ubuntu. Comme précédemment, | Lancez un conteneur Ubuntu. Comme précédemment, | ||
- | + | <code shell> | |
- | btssio@ubuntudocker: | + | btssio@ubuntudocker: |
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
CONTAINER ID IMAGE COMMAND | CONTAINER ID IMAGE COMMAND | ||
b5ec671c6d11 ubuntu "/ | b5ec671c6d11 ubuntu "/ | ||
… | … | ||
+ | </ | ||
+ | Vous pouvez prendre connaissance de la configuration du conteneur sur Docker Hub en consultant son fichier **Dockerfile**. | ||
- | Vous pouvez prendre connaissance de la configuration du conteneur sur Docker Hub en consultant son fichier Dockerfile. | ||
- | + | <WRAP center round important> | |
- | INPORTANT | + | **IMPORTANT**\\ |
- | Le fichier Dockerfile associé à une image Docker, décrit exactement comment l’image a été construite. Quand vous recherchez sur Docker Hub une image qui doit répondre à votre besoin et qui a été publié par un membre de la communauté, | + | Le fichier |
- | • à choisir une image officielle si celle-ci répond à votre besoin, | + | |
- | • et, si cela n’est pas le cas, à choisir une image de la communauté en regardant si elle est souvent utilisée (sa popularité), | + | |
+ | </ | ||
+ | |||
Sur Docker Hub plusieurs Dockerfile sont indiqués pour l’image officielle ubuntu : | Sur Docker Hub plusieurs Dockerfile sont indiqués pour l’image officielle ubuntu : | ||
+ | {{ : | ||
Télécharger l’image Docker ubuntu : | Télécharger l’image Docker ubuntu : | ||
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
bionic-20190424: | bionic-20190424: | ||
Digest: sha256: | Digest: sha256: | ||
Ligne 154: | Ligne 172: | ||
ubuntu | ubuntu | ||
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
+ | </ | ||
Il s’agit exactement de la même image comme le montre le champ IMAGE ID. Vous pouvez donc télécharger une version plus ancienne d’Ubuntu si votre projet porte sur une version bien précise de cet OS et faire cohabiter ensuite des conteneurs utilisant des versions différentes de système d’exploitation ou de paquets logiciels. | Il s’agit exactement de la même image comme le montre le champ IMAGE ID. Vous pouvez donc télécharger une version plus ancienne d’Ubuntu si votre projet porte sur une version bien précise de cet OS et faire cohabiter ensuite des conteneurs utilisant des versions différentes de système d’exploitation ou de paquets logiciels. | ||
Ligne 160: | Ligne 178: | ||
Pour connaître comment cette image a été construite, cliquez sur le lien du Dockerfile : | Pour connaître comment cette image a été construite, cliquez sur le lien du Dockerfile : | ||
- | FROM scratch | + | <code shell> |
+ | FROM scratch | ||
ADD ubuntu-bionic-core-cloudimg-amd64-root.tar.gz / | ADD ubuntu-bionic-core-cloudimg-amd64-root.tar.gz / | ||
… | … | ||
Ligne 166: | Ligne 185: | ||
# overwrite this with 'CMD []' in a dependent Dockerfile | # overwrite this with 'CMD []' in a dependent Dockerfile | ||
CMD ["/ | CMD ["/ | ||
+ | </ | ||
La première ligne - FROM scratch - indique que cette image ne se base pas sur une image préexistante. On part de la version de base d’Ubuntu. | La première ligne - FROM scratch - indique que cette image ne se base pas sur une image préexistante. On part de la version de base d’Ubuntu. | ||
La dernière ligne - CMD ["/ | La dernière ligne - CMD ["/ | ||
Ligne 172: | Ligne 191: | ||
Sans rentrer dans le détail du contenu du fichier Dockerfile, les différentes actions décrites dans ce fichier se sont traduites par le téléchargement des quatre couches de l’image ubuntu sur votre serveur Ubuntu. | Sans rentrer dans le détail du contenu du fichier Dockerfile, les différentes actions décrites dans ce fichier se sont traduites par le téléchargement des quatre couches de l’image ubuntu sur votre serveur Ubuntu. | ||
- | 3.C Utiliser les conteneurs | + | ==== Utiliser les conteneurs |
Le conteneur ubuntu lancé prévoit bien l’exécution d’un processus shell mais il s’est ensuite automatiquement arrêté. En effet, comme rien n’a été précisé lors du lancement pour que vous puissiez utiliser ce shell, le conteneur a considéré que l’action à faire, lancer un shell et rien d’autre, est terminée. Il s’arrête donc. | Le conteneur ubuntu lancé prévoit bien l’exécution d’un processus shell mais il s’est ensuite automatiquement arrêté. En effet, comme rien n’a été précisé lors du lancement pour que vous puissiez utiliser ce shell, le conteneur a considéré que l’action à faire, lancer un shell et rien d’autre, est terminée. Il s’arrête donc. | ||
- | Lancer un conteneur en mode interactif | + | === Lancer un conteneur en mode interactif |
Pour pouvoir réellement interagir et utiliser le conteneur ubuntu grâce à ce processus de shell Bash qui est lancé, il faut : | Pour pouvoir réellement interagir et utiliser le conteneur ubuntu grâce à ce processus de shell Bash qui est lancé, il faut : | ||
- | • lancer le conteneur en mode interactif pour lui associer une console TTY : paramètre -i, | + | * lancer le conteneur en mode interactif pour lui associer une console TTY : paramètre -i, |
- | • ouvrir une console pour que vous puissiez saisir des commandes : paramètre -t. | + | |
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
root@394beb25ab78:/# | root@394beb25ab78:/# | ||
bin | bin | ||
Ligne 188: | Ligne 209: | ||
docker.txt | docker.txt | ||
root@394beb25ab78:/# | root@394beb25ab78:/# | ||
+ | </ | ||
+ | Le lancement du conteneur est toujours aussi rapide et le résultat de la commande est différent puisque vous avez le **shell du conteneur** avec comme nom **l’identifiant** du nouveau conteneur lancé. | ||
- | Le lancement du conteneur est toujours aussi rapide et le résultat de la commande est différent puisque vous avez le shell du conteneur avec comme nom l’identifiant du nouveau conteneur lancé. | + | Vous êtes identifiés comme **root** sur la VM nommée |
- | Vous êtes identifiés comme root sur la VM nommée 394beb25ab78 qui est l’identifiant du nouveau conteneur lancé et qui a servi à attribuer un nom à la VM. | + | |
- | La commande ls montre l’arborescence de la VM et non celle du serveur Ubuntu. Un fichier a été créé dans le dossier /root. | + | |
- | Tapez Exit pour revenir à la machine hôte en sortant du shell et donc du conteneur qui ne faisant que tourner cet unique processus s’arrête. | + | La commande **ls** montre l’arborescence de la VM |
+ | Tapez **Exit** pour revenir à la machine hôte en sortant du shell et donc du conteneur qui ne faisant que tourner cet unique processus s’arrête. | ||
- | INPORTANT | ||
- | Toutes les modifications effectuées dans le conteneur lancé, comme la création de ce fichier docker.txt, ne modifie pas l’image ubuntu qui a servi à sa création. Les modifications ne sont faites que dans une nouvelle couche ajoutée par Docker pour gérer les modifications du système de fichiers afin de n’avoir aucun impact sur la couche inférieure, | ||
- | En lançant un nouveau conteneur, vous consterez que le dossier root ne contient pas de fichier docker.txt. | ||
- | Autre commande pour visualiser les conteneurs actifs | + | <WRAP center round important> |
- | btssio@ubuntudocker: | + | **IMPORTANT**\\ |
+ | Toutes les** modifications effectuées** dans le conteneur lancé, comme la création de ce fichier docker.txt, ne modifie pas l’image ubuntu qui a servi à sa création. Les modifications ne sont faites que dans une **nouvelle couche** ajoutée par Docker pour gérer les modifications du système de fichiers afin de n’avoir aucun impact sur la couche inférieure, | ||
+ | En lançant un nouveau conteneur, vous consterez que le dossier root ne contient pas de fichier docker.txt. | ||
+ | </ | ||
+ | |||
+ | === Autre commande pour visualiser les conteneurs actifs | ||
+ | <code shell> | ||
+ | btssio@ubuntudocker: | ||
+ | </ | ||
+ | === Lancer un conteneur en mode détaché === | ||
- | | ||
Lors du lancement d’un conteneur, on perd l’accès à la console du serveur Ubuntu. Cette commande permet de lancer le conteneur et de retrouver le shell du serveur sans arrêter le conteneur. | Lors du lancement d’un conteneur, on perd l’accès à la console du serveur Ubuntu. Cette commande permet de lancer le conteneur et de retrouver le shell du serveur sans arrêter le conteneur. | ||
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
e70a11313849c4c2ce8beebe72935368b909759ab5eb4e2c2f1bcf715c1a2bd1 | e70a11313849c4c2ce8beebe72935368b909759ab5eb4e2c2f1bcf715c1a2bd1 | ||
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
CONTAINER ID IMAGE COMMAND | CONTAINER ID IMAGE COMMAND | ||
e70a11313849 ubuntu "/ | e70a11313849 ubuntu "/ | ||
+ | </ | ||
On peut aussi écrire les paramètres de la façon suivante : | On peut aussi écrire les paramètres de la façon suivante : | ||
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
+ | </ | ||
+ | === Se connecter à un conteneur lancé === | ||
- | |||
- | Se connecter à un conteneur lancé | ||
Après le lancement d’un conteneur en mode détaché, il peut être nécessaire de pouvoir accéder à la console du conteneur et donc au shell. Voici deux manières de procéder. | Après le lancement d’un conteneur en mode détaché, il peut être nécessaire de pouvoir accéder à la console du conteneur et donc au shell. Voici deux manières de procéder. | ||
- | S’attacher à la console du conteneur : ATTENTION, en quittant le shell, cela arrête le processus shell et donc le conteneur : | + | S’attacher à la console du conteneur : **ATTENTION**, en quittant le shell, cela arrête le processus shell et donc le conteneur : |
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
root@e70a11313849:/# | root@e70a11313849:/# | ||
+ | </ | ||
Lancer un processus shell : en quittant la console le conteneur n’est pas arrêté : | Lancer un processus shell : en quittant la console le conteneur n’est pas arrêté : | ||
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
root@e70a11313849:/# | root@e70a11313849:/# | ||
- | + | </ | |
- | Obtenir la liste des modifications d’un conteneur par rapport à son image de lancement | + | |
- | btssio@ubuntudocker: | + | === Obtenir la liste des modifications d’un conteneur par rapport à son image de lancement |
+ | <code shell> | ||
+ | btssio@ubuntudocker: | ||
C /root | C /root | ||
A / | A / | ||
A / | A / | ||
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
+ | </ | ||
Cette commande utilise la syntaxe diff/patch en Linux : | Cette commande utilise la syntaxe diff/patch en Linux : | ||
- | • D pour les parties d’arborescence supprimées, | + | * D pour les parties d’arborescence supprimées, |
- | • C pour les parties d’arborescence créées | + | |
- | • A pour les ajouts : le fichier .bash_history est créé automatiquement pour stocker l’historique des actions effectuées dans le shell, et le fichier docker.txt que vous avez créé manuellement. | + | |
+ | |||
+ | === Créer une image personnalisée === | ||
- | | ||
L’image qui a servi à la création d’un conteneur n’est jamais modifiée par ce qui est fait à l’intérieur d’un conteneur. Pour que les modifications puissent faire partie d’une image, il faut créer une nouvelle, dans laquelle une nouvelle couche logicielle sera ajoutée et cette couche supplémentaire contiendra les modifications par rapport à l’image de base. | L’image qui a servi à la création d’un conteneur n’est jamais modifiée par ce qui est fait à l’intérieur d’un conteneur. Pour que les modifications puissent faire partie d’une image, il faut créer une nouvelle, dans laquelle une nouvelle couche logicielle sera ajoutée et cette couche supplémentaire contiendra les modifications par rapport à l’image de base. | ||
Ligne 246: | Ligne 280: | ||
Tout d’abord créez un conteneur et personnalisez-le : | Tout d’abord créez un conteneur et personnalisez-le : | ||
- | + | <code shell> | |
- | btssio@ubuntudocker: | + | btssio@ubuntudocker: |
root@407248dafa24:/# | root@407248dafa24:/# | ||
root@407248dafa24: | root@407248dafa24: | ||
Ligne 276: | Ligne 310: | ||
root@407248dafa24: | root@407248dafa24: | ||
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
+ | </ | ||
En visualisant les conteneurs existants, vous retrouvez celui que vous venez de créer (ID 407248dafa24) avec le nom généré par Docker (festive_sammet) | En visualisant les conteneurs existants, vous retrouvez celui que vous venez de créer (ID 407248dafa24) avec le nom généré par Docker (festive_sammet) | ||
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
CONTAINER ID IMAGE COMMAND | CONTAINER ID IMAGE COMMAND | ||
407248dafa24 ubuntu "/ | 407248dafa24 ubuntu "/ | ||
+ | </ | ||
Puis créez votre nouvelle image en utilisant son ID ou son nom et en lui associant un nouveau nom d’image préfixé par une information qui vous identifie : | Puis créez votre nouvelle image en utilisant son ID ou son nom et en lui associant un nouveau nom d’image préfixé par une information qui vous identifie : | ||
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
sha256: | sha256: | ||
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
Ligne 291: | Ligne 327: | ||
ubuntu | ubuntu | ||
… | … | ||
- | + | </ | |
- | Une nouvelle image existe avec comme nom techer/ | + | Une **nouvelle image** existe avec comme nom techer/ |
La création d’un nouveau conteneur à partir de cette nouvelle image montre qu’elle a été personnalisée : | La création d’un nouveau conteneur à partir de cette nouvelle image montre qu’elle a été personnalisée : | ||
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
root@88085b7f2c50:/# | root@88085b7f2c50:/# | ||
docker.txt | docker.txt | ||
root@88085b7f2c50:/# | root@88085b7f2c50:/# | ||
+ | </ | ||
+ | Ce premier aperçu des possibilités de Docker est destiné à mieux comprendre la solution **Kathara** que vous allez ensuite utiliser. Cette solution utilise Docker et des scripts python pour faciliter la création et la gestion des VMs pour maquetter des infrastructures de réseau et de services. | ||
- | Ce premier aperçu des possibilités | + | ==== Quelques autres commandes |
- | 3.D Quelques autres commandes de Docker | + | === Supprimer un conteneur |
- | Supprimer un conteneur | + | <code shell> |
- | docker rm [identifiant ou nom du conteneur] | + | docker rm [identifiant ou nom du conteneur] |
+ | </ | ||
+ | === Faire le ménage === | ||
- | | ||
La commande system et sa sous-commande prune permettant de réaliser le ménage dans les conteneurs arrêtés, les images orphelines et d’autres ressources a priori non utilisées, sans supprimer les images. | La commande system et sa sous-commande prune permettant de réaliser le ménage dans les conteneurs arrêtés, les images orphelines et d’autres ressources a priori non utilisées, sans supprimer les images. | ||
- | docker system prune | + | <code shell> |
+ | docker system prune | ||
+ | </ | ||
+ | === Supprimer une image === | ||
- | | ||
Les conteneurs qui utilisent cette image doivent au préalable avoir été supprimés. Le paramètre -f force cependant la suppression si cela n’est pas le cas. | Les conteneurs qui utilisent cette image doivent au préalable avoir été supprimés. Le paramètre -f force cependant la suppression si cela n’est pas le cas. | ||
+ | <code shell> | ||
+ | docker rmi [identifiant ou nom de l’image] | ||
+ | </ | ||
- | docker | + | === Lancer un conteneur avec un nom donné === |
+ | <code shell> | ||
+ | docker | ||
+ | </ | ||
- | Lancer un conteneur | + | === Lancer un conteneur |
- | docker run --name=[nom fourni] [image] | + | |
- | | ||
Lors du lancement d’un conteneur, on perd l’accès à la console du serveur Ubuntu. Cette commande permet de lancer le conteneur et de retrouver le shell du serveur sans arrêter le conteneur. | Lors du lancement d’un conteneur, on perd l’accès à la console du serveur Ubuntu. Cette commande permet de lancer le conteneur et de retrouver le shell du serveur sans arrêter le conteneur. | ||
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
e70a11313849c4c2ce8beebe72935368b909759ab5eb4e2c2f1bcf715c1a2bd1 | e70a11313849c4c2ce8beebe72935368b909759ab5eb4e2c2f1bcf715c1a2bd1 | ||
btssio@ubuntudocker: | btssio@ubuntudocker: | ||
CONTAINER ID IMAGE COMMAND | CONTAINER ID IMAGE COMMAND | ||
e70a11313849 ubuntu "/ | e70a11313849 ubuntu "/ | ||
+ | </ | ||
+ | === Se connecter à un conteneur lancé === | ||
- | |||
- | Ss connecter à un conteneur lancé | ||
Pour accéder ensuite à ce conteneur on utilise la commande attach avec l’identifiant ou le nom du conteneur : | Pour accéder ensuite à ce conteneur on utilise la commande attach avec l’identifiant ou le nom du conteneur : | ||
- | btssio@ubuntudocker: | + | <code shell> |
+ | btssio@ubuntudocker: | ||
root@e70a11313849:/# | root@e70a11313849:/# | ||
+ | </ | ||
- | Arrêter un conteneur | + | === Arrêter un conteneur |
- | docker stop [conteneur] | + | <code shell> |
- | + | docker stop [conteneur] | |
- | | + | </ |
- | docker start [conteneur] | + | |
+ | === Démarrer un conteneur arrêté === | ||
+ | <code shell> | ||
+ | docker start [conteneur] | ||
+ | </ | ||