Aller au contenu principal

Introduction conteneurs Docker

Docker est une plateforme de conteneurs qui permet de créer, de déployer et de gérer des applications conteneurisées. Les conteneurs sont des unités logicielles légères et autonomes qui contiennent tout ce dont une application a besoin pour s'exécuter, y compris le code, les bibliothèques, les outils et les configurations.

Ce tutoriel vous montrera comment déployer et paramétrer des conteneurs Docker. Nous commencerons par installer Docker sur votre système. Ensuite, nous verrons comment télécharger des images Docker à partir du Docker Hub, la base de données publique d'images Docker. Enfin, nous verrons comment exécuter des conteneurs Docker et les configurer.

Installation de Docker

Vous pouvez installer docker desktop sur votre système en suivant lien en rapport à votre système d'exploitation :

Vous pouvez aussi installer docker engine sur linux en suivant cette documentation

Vérification de l'installation de Docker

Pour vérifier que Docker est installé et fonctionne correctement, exécutez la commande suivante :

docker run hello-world

Cette commande devrait exécuter un conteneur de l'image Docker hello-world et afficher le message "Hello from Docker!".

Téléchargement d'images Docker

Le Docker Hub contient des milliers d'images Docker, y compris des images pour des applications courantes telles que des serveurs web, des bases de données et des applications web.
Pour télécharger une image Docker, utilisez la commande :

docker pull nom_image

Par exemple, pour télécharger l'image Docker pour le serveur web Apache, exécutez la commande suivante :

docker pull httpd

Exécution de conteneurs Docker

Une fois que vous avez téléchargé une image Docker, vous pouvez l'exécuter en tant que conteneur. Pour ce faire, utilisez la commande docker run.
Par exemple, pour exécuter l'image Docker pour le serveur web Apache, exécutez la commande suivante :

docker run --rm -p 8080:80 httpd

L'option -p 8080:80 exécutera le conteneur sur le port 8080 du système hôte, vous pouvez accéder au serveur web Apache à l'adresse http://localhost:8080.
L'option --rm permet de spécifier au conteneur qu'il doit se supprimer a la déconnexion.

Lister les conteneurs

Pour lister les conteneurs lancés sur la machine, exécutez la commande suivante :

docker container ls

Pour lister tous les conteneurs sur la machine, exécutez la commande suivante :

docker ps -a

Lister les images

Pour lister les images téléchargées sur la machine, exécutez la commande suivante :

docker image ls

Executer un shell sur un conteneur

Pour Executer un shell sur un conteneur, exécutez la commande suivante :

docker exec -it nom_conteneur /bin/bash

ou

docker exec -it nom_conteneur /bin/sh

Supprimer un conteneur

Pour supprimer un conteneur sur la machine, exécutez la commande suivante :

docker rm id_conteneur

Configuration d'une image Docker

Vous pouvez configurer des images Docker en utilisant les fichiers de configuration Docker. Les fichiers de configuration Docker définissent les paramètres des conteneurs.

Pour créer un fichier de configuration Docker, créez un fichier texte nommé Dockerfile. Ensuite, ajoutez au fichier les paramètres que vous souhaitez configurer.

Voici un exemple de configuration d'un Dockerfile simple :

FROM ubuntu

RUN apt update -yq \
&& apt install apache -yq

EXPOSE 8080

Une fois que vous avez créé le fichier de configuration Docker, vous pouvez construire l'image qui sera exécuter dans le conteneur. Pour ce faire, utilisez la commande suivante :

docker build -t mon_image -f Dockerfile

Conclusion

Ce tutoriel vous a montré comment déployer et paramétrer des conteneurs Docker. Vous pouvez utiliser ces informations pour déployer des applications conteneurisées sur votre système.

Voici quelques ressources supplémentaires qui peuvent vous être utiles :

Documentation Docker: ici
Docker Hub: ici

Exercices

  • Créer un conteneur simple.
  • Créer une image Docker.
  • Créer un conteneur qui exécute une application Python.
  • Créer une image Docker qui exécute une application Java.
  • Utiliser Docker pour déployer une application sur un serveur distant.
  • Utiliser Docker Compose.