Dans ce tuto nous allons fournir un bref aperçu de la relation entre les images Docker et les conteneurs Docker. Ensuite, nous examinerons plus en détail comment exécuter, démarrer, arrêter et supprimer des conteneurs.
Si vous n'avez pas déjà installé Docker sur votre système, vous devez le faire. Pour cela vous pouvez suivre les instructions d'installation appropriées pour votre système d'exploitation sur le site officiel de Docker
La commande docker run suivante créera un nouveau conteneur à l’aide de l’image Ubuntu de base. -t nous donnera un terminal, et -i nous permettra d’interagir avec lui.
Nous nous appuierons sur la commande par défaut dans le fichier Docker de l’image de base Ubuntu, bash, pour nous déposer dans un shell.
root@bumblebee:~# docker run -ti ubuntu
L’invite de ligne de commande change pour indiquer que nous sommes à l’intérieur du conteneur en tant qu’utilisateur root, suivi de l’ID du conteneur à 12 caractères.
root@800cf2b98f39:/#
Nous allons faire une modification en faisant écho à du texte dans le répertoire /tmp du conteneur, puis utiliser cat pour vérifier qu’il a bien été enregistré.
root@800cf2b98f39:/# echo "Example1" > /tmp/Example1.txt root@800cf2b98f39:/# cat /tmp/Example1.txtExample1 root@800cf2b98f39:/# exit
La commande exit permet de sortir du container
Si nous exécutons docker ps, la commande affichera les conteneurs en cours d’exécution :
root@bumblebee:~# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4e44017182e4 bash "docker-entrypoint.s…" 5 days ago Up 5 days dazzling_ritchie
Si nous ajoutons l’option -a, cette commande affiche tous les conteneurs, arrêtés ou en cours d’exécution
root@bumblebee:~# docker ps -a
Pour redémarrer un conteneur existant, nous allons utiliser la commande start avec l’indicateur -a pour l’attacher et l’indicateur -i pour le rendre interactif, suivi de l’ID ou du nom du conteneur.
Assurez vous de remplacer l’ID de votre conteneur dans la commande ci-dessous :
root@bumblebee:~# docker start -ai 800cf2b98f39 root@800cf2b98f39:/#
Nous nous retrouvons à l’invite bash du conteneur une fois de plus et lorsque nous faisons un cat du fichier que nous avons précédemment créé, il est toujours là.
root@800cf2b98f39:/# cat /tmp/Example1.txt Example1
Pour supprimer le container la commande docker rm, fonctionne que sur les conteneurs arrêtés. Elle permet de spécifier le nom ou l’ID d’un ou plusieurs conteneurs, afin que nous puissions les supprimer avec ce qui suit :
root@bumblebee:~# docker stop 800cf2b98f39800 cf2b98f39 root@bumblebee:~# docker rm 800cf2b98f39 800cf2b98f39
On peux faire un docker ps -a pour valider la bonne suppression
Un Dockerfile est un fichier texte qui contient des instructions pour construire une image Docker. Vous pouvez créer un fichier Dockerfile à l'aide d'un éditeur de texte. Voici un exemple simple de Dockerfile pour une application web Node.js :
# Utilisez une image de base Node.js FROM node:14 # Définissez le répertoire de travail dans le conteneur WORKDIR /app # Copiez le package.json et le package-lock.json dans le conteneur COPY package*.json ./ # Installez les dépendances RUN npm install # Copiez le reste des fichiers de l'application COPY . . # Exposez le port sur lequel l'application écoute EXPOSE 3000 # Commande pour démarrer l'application CMD ["node", "app.js"]
Construire l'image Docker : Utilisez la commande docker build
pour créer une image à partir du Dockerfile. Assurez-vous de vous trouver dans le répertoire contenant le Dockerfile, puis exécutez la commande suivante :
docker build -t mon-application:1.0 .
Cela crée une image nommée "mon-application" avec l'étiquette "1.0".
Exécution du conteneur : Pour exécuter un conteneur à partir de l'image que vous avez construite, utilisez la commande docker run
:
arduinodocker run -p 8080:3000 mon-application:1.0
Cela exécute l'application dans le conteneur et mappe le port 3000 du conteneur sur le port 8080 de votre système hôte.
Gestion des conteneurs Docker : Vous pouvez lister, arrêter, redémarrer et supprimer des conteneurs à l'aide des commandes docker ps
, docker stop
, docker restart
et docker rm
.
C'est une procédure de base pour créer et exécuter un conteneur Docker. Vous pouvez personnaliser davantage le processus en fonction de vos besoins spécifiques, mais ces étapes couvrent les bases.