Exécuter un conteneur Nginx
Dans cette étape, nous allons apprendre à exécuter un serveur web Nginx simple dans un conteneur Docker. Docker nous permet d'empaqueter des applications et leurs dépendances dans des conteneurs, garantissant ainsi leur exécution cohérente dans différents environnements.
Tout d'abord, nous devons nous assurer que l'image Nginx est disponible sur notre système. Nous pouvons récupérer l'image officielle Nginx depuis Docker Hub en utilisant la commande docker pull
. Cette commande télécharge l'image sur votre machine locale.
docker pull nginx:latest
Vous devriez voir une sortie indiquant que l'image est en cours de téléchargement. Une fois le téléchargement terminé, vous pouvez vérifier que l'image est disponible en listant les images sur votre système :
docker images
Vous devriez voir nginx
dans la liste.
Maintenant, lançons le conteneur Nginx. Nous utiliserons la commande docker run
. Le drapeau -d
exécute le conteneur en mode détaché (en arrière-plan), et le drapeau -p 80:80
mappe le port 80 de notre machine hôte vers le port 80 à l'intérieur du conteneur. Cela nous permet d'accéder au serveur web Nginx depuis notre navigateur hôte. Nous donnons également un nom au conteneur avec --name my-nginx-container
pour une identification plus facile.
docker run -d -p 80:80 --name my-nginx-container nginx
Après l'exécution de la commande, Docker affichera une longue chaîne de caractères, qui est l'ID du conteneur. Cela indique que le conteneur a démarré avec succès en arrière-plan.
Pour vérifier que le conteneur est en cours d'exécution, vous pouvez utiliser la commande docker ps
, qui liste tous les conteneurs en cours d'exécution :
docker ps
Vous devriez voir my-nginx-container
listé avec un statut Up
.
Enfin, accédons au serveur web Nginx depuis notre machine hôte. Comme nous avons mappé le port 80, nous pouvons utiliser curl
pour effectuer une requête HTTP vers localhost
sur le port 80.
curl localhost
Vous devriez voir le HTML de la page d'accueil par défaut de Nginx dans la sortie. Cela confirme que le conteneur Nginx est en cours d'exécution et accessible.