Exemples simples
Lancer un conteneur Docker simplement avec la commande
docker run
Notions théoriques
- Docker est un outil qui permet de créer, déployer et exécuter des applications dans des conteneurs.
- Un conteneur est une unité légère, portable et autonome qui contient tout ce dont une application a besoin pour fonctionner : code, bibliothèques, dépendances, etc.
La commande docker run est l’une des commandes les plus utilisées avec Docker.
Elle permet de créer et de lancer un conteneur à partir d’une image.
Voici la syntaxe générale de la commande docker run :
docker run [options] image [command] [args]
Composants de la commande
image: Nom de l’image à utiliser (ex :nginx,ubuntu,python, etc.)command: (optionnel) Commande à exécuter dans le conteneurargs: (optionnel) Arguments de la commande à exécuter dans le conteneur
Options courantes de docker run
-d: Lance le conteneur en arrière-plan (mode détaché)-it: Combine-i(mode interactif) et-t(allocation d’un pseudo-terminal)--name: Donne un nom personnalisé au conteneur-p: Redirige un port du conteneur vers un port de la machine hôte (-p 8080:80)-v: Monte un volume (dossier partagé entre l’hôte et le conteneur)--rm: Supprime le conteneur une fois arrêté--envou-e: Définit une variable d’environnement dans le conteneur
Exécution d’un conteneur
Quand on exécute docker run, Docker :
- Cherche l’image localement. Si elle n’existe pas, il la télécharge depuis Docker Hub.
- Crée un conteneur à partir de cette image.
- Exécute la commande (par défaut ou personnalisée).
- Affiche le résultat ou garde le conteneur actif selon les options.
Exemples d’usage
-
Lancer un conteneur Ubuntu en mode interactif :
docker run -it ubuntu bash -
Lancer un serveur Web Nginx accessible sur le port 8080 :
docker run -d -p 8080:80 nginx -
Lancer un script Python dans un conteneur :
docker run --rm python:3.11 python -c "print('Hello Docker')"
Cas d’usage typiques
- Tester une application sans l’installer localement
- Isoler un environnement d’exécution
- Lancer un serveur temporaire
- Automatiser des tâches dans un environnement reproductible
Exemple pratique
Il est possible de lancer un conteneur Web simple basé sur l’image nginx et de le rendre accessible sur un navigateur.
Étapes :
-
Tirer l’image officielle
nginxdepuis Docker Hub :docker pull nginx -
Lancer un conteneur Nginx en arrière-plan, en exposant le port 8080 :
docker run -d -p 8080:80 --name monsite nginx -
Vérifier que le conteneur tourne :
docker ps -
Accéder à
http://localhost:8080dans un navigateur : une page Nginx doit s’afficher. -
Arrêter le conteneur :
docker stop monsite -
Supprimer le conteneur :
docker rm monsite -
Supprimer l’image (optionnel) :
docker rmi nginx