Exemples simples
Lancer un conteneur Docker simplement avec la commande
docker run
Notions théoriques
Rappels
- 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.
astuce
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é--env
ou-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.