Tutoriels Backend
Démarrer avec docker
Mis à jour : 10/01/2025 Danny
Docker est une plateforme pour lancer des applications dans des containers.
Vous pouvez exécuter vos applications sur n'importe quel système.
Il facilite le déploiement, l'évolutivité et la gestion des services.
Docker est devenu un outil incontournable pour les développeurs et les équipes DevOps.


Si vous n'avez pas le temps de lire ce guide en entier,
téléchargez le maintenant
Comment faire
Dans ce simple tutoriel un résumé de quelques commandes essentielles.
- Installation
- Commandes
- Images
- Containres
- Dockerfile
- Example Hello
Documentation
Site officiel
https://www.docker.com/
Procédures d'installation
https://docs.docker.com/install/linux/docker-ce/ubuntu/
Recherche des images sur docker hub
https://hub.docker.com/
Installation
# Installation
sudo apt-get --yes install docker.io
# Désinstallation des anciennes versions
sudo apt-get remove docker docker-engine docker.io containerd runc --yes
# Test de l'installation
sudo docker run hello-world
# Gestion des droits
sudo usermod -aG docker ${USER}
# Redémarrage pour prise en compte des droits
reboot
Commandes
# Indique la version de docker
sudo docker version
# Redémarrage du service docker
sudo service docker restart
# Liste des images
docker images
docker image ls
# Liste des containers
docker ps -a
docker container ls
# Efface toutes les images
docker rmi $(docker images -q)
# Efface tous les containers
docker rm $(docker ps -a -q)
Images
# Recherche une image
sudo docker search nginx
# Rapatrie une image
docker pull nginx
# Rapatrie une image dans une version spécifique
docker pull nginx:1.17.9
docker pull nginx:latest
docker pull node:12.16.1
# Supprime une image avec image_id
docker rmi image_id
# Supprime une image avec image_id en mode forcé
docker rmi -f image_id
# Renomme une image contenant image_id 0a
docker tag 0a new-name:tag-name
Containers
Options
- -d : daemon
- -p : publish
# Execute un container nommé frontend à partir d'une image nginx
sudo docker pull nginx:1.17.9
sudo docker run --name frontend -d -p 80:80 nginx:1.17.9
# Stoppe un container nommé frontend
docker stop frontend
# Efface un container nommé frontend
docker rm frontend
# Redémarre un container
docker restart frontend
# Efface un container nommé frontend en mode forcé
docker rm frontend -f
# Renomme un container old-name en un container new-name
docker rename old-name new-name
# Visualise les logs
docker logs frontend
# Entre dans le conteneur en mode execution
docker exec -it frontend /bin/bash
Dockerfile
.dockerignore
.git
*Dockerfile*
*docker-compose*
node_modules
Dockerfile
FROM nginx:1.17.9
LABEL author="www.ganatan@com"
COPY /dist/angular-starter/browser /usr/share/nginx/html
# Création d'une image à partir du dockerfile par défaut
# Nom nom-image , Tag 1.0.0
docker build -t nom-image:1.0.0 .
# Création d'une image à partir du fichier dockerfile nommé Dockerfile-specific
docker build -t nom-image:1.0.0 -f Dockerfile-specific .
# Exécution du container sur le port 5000
docker run --rm --name nom-container -d -p 5000:80 nom-image:1.0.0
# Entre dans le conteneur en mode execution
docker exec -it nom-container /bin/bash
Créer une image Hello
hello/Dockerfile
FROM busybox:latest
ADD index.html /www/index.html
EXPOSE 4000
CMD httpd -p 4000 -h /www; tail -f /dev/null
hello/index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, user-scalable=no">
<title>titre de notre page</title>
</head>
<body>
Page Hello
</body>
</html>
# se positionner dans le répertoire hello contenant le fichier Dockerfile
# Crée une image avec un nom aléatoire à partir de l'image busybox
docker build .
# Crée une image hello:latest à partir de l'image busybox
docker build -t helloimage:1.0.0 .
# Execute le container mais port 4000 non visible
docker run --rm -d helloimage:1.0.0
# Execute le container mais port 5000 visible en mode non daemon
docker run --rm -p 5000:4000 helloimage:1.0.0
# Execute le container mais port 5000 visible en mode daemon
docker run --rm -d -p 5000:4000 helloimage:1.0.0
# Execute le container avec le nom hellocontainer
docker run --rm --name hellocontainer -d -p 5000:4000 helloimage:1.0.0
Docker registry
Créer une image Docker sur le Docker Hub.
La rendre accessible de façon publique.
# Connection au docker Hub
docker login -u "my_name" -p "my_password" docker.io
# Tag notre image
docker tag helloimage:1.0.0 my_name/angular-example-starter:1.0.0
# Envoie l'image sur docker Hub
docker push my_name/angular-example-starter:1.0.0
# Récupère l'image sur son poste à partir de Docker Hub
docker pull my_name/angular-example-starter:1.0.0
# Exécute l'image dans un container
docker run --rm --name hellocontainer -d -p 80:4000 my_name/angular-example-starter:1.0.0
Volumes
# Création d'un volume
docker volume create volume-test
# Liste des volumes
docker volume ls
Comment créer une application From scratch ?
Créez votre compte ganatan
Téléchargez gratuitement vos guides complets
Démarrez avec angular CLI 
Gérez le routing 
Appliquez le Lazy loading 
Intégrez Bootstrap 
Utilisez Python avec Angular 
Utilisez Django avec Angular 
Utilisez Flask avec Angular 
