- Créer un Dockerfile dans un dossier vide, qui se nomme
Dockerfile
:FROM nginx:alpine COPY index.html /usr/share/nginx/html
- Créer un fichier
index.html
:<html> <head><title>Mon super site</title></head> <body> <h1>Hello Docker!</h1> <p>Ma page personnalisée.</p> </body> </html>
- Construire l’image :
docker build -t webserver-image:v1 .
- Lancer le conteneur :
docker run -d --name mysite -p 80:80 webserver-image:v1
- Ouvrez votre navigateur à l’adresse
http://localhost
- Vérifiez que la page s’affiche.
- Ouvrez votre navigateur à l’adresse
-
Exercice - logs :
- Tapez
docker logs mysite
. Que voyez-vous ? - Modifiez votre
index.html
, - Créez votre plus beau meme grâce à : Meme Generator - Imgflip
- Puis insérez-le sur votre page web.
- Rebuild l’image. Relancez le conteneur.
- Tapez
-
Exercice - arrêt / suppression :
- Arrêtez le conteneur :
docker stop mysite
- Supprimez-le :
docker rm mysite
- Rajoutez l’option
--rm
lors du run pour supprimer automatiquement le conteneur quand il s’arrête.
- Arrêtez le conteneur :
-
Démarrez un registry :
docker run -d -p 5000:5000 --name local-registry registry:2
-
Taguez votre image vers le registry :
docker tag webserver-image:v1 localhost:5000/webserver-image:v1
-
Poussez l’image :
docker push localhost:5000/webserver-image:v1
- Supprimez l’image locale pour simuler un nouveau poste :
docker rmi webserver-image:v1
docker rmi localhost:5000/webserver-image:v1
- Déplacez ou supprimez votre
Dockerfile
etindex.html
pour prouver qu’ils ne sont plus disponibles en local. - Récupérez l’image depuis votre registry :
docker pull localhost:5000/webserver-image:v1
- Lancez à nouveau le conteneur :
docker run -d --name mysite -p 80:80 localhost:5000/webserver-image:v1
- Vérifiez à nouveau que `http://localhost` fonctionne.
- Arrêtez et supprimez votre conteneur
mysite
:
docker stop mysite
docker rm mysite
- Arrêtez et supprimez le registry local :
docker stop local-registry
docker rm local-registry
- Supprimez les images non utilisées :
docker image prune
Dans ce cours, vous avez :
- Expérimenté la création et l’exécution d’images Docker via un Dockerfile.
- Pratiqué les commandes de base (build, run, logs, ps, stop, rm…) et fait un exercice avec Nginx (cela servira pour l'évaluation).
- Utilisé un registry local pour stocker et partager vos images.