0% ont trouvé ce document utile (0 vote)
112 vues25 pages

Docker

Ce document décrit Docker, une plateforme de conteneurisation open source. Il explique ce qu'est Docker, pourquoi l'utiliser, son architecture et ses principales commandes. Le document montre ensuite comment installer Docker, créer et gérer des conteneurs, images, volumes et sauvegarder/restaurer des images.

Transféré par

Aicha Ahmat
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
112 vues25 pages

Docker

Ce document décrit Docker, une plateforme de conteneurisation open source. Il explique ce qu'est Docker, pourquoi l'utiliser, son architecture et ses principales commandes. Le document montre ensuite comment installer Docker, créer et gérer des conteneurs, images, volumes et sauvegarder/restaurer des images.

Transféré par

Aicha Ahmat
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Déployer vos applications

avec Docker

1
NetDevOps
NANFACK Steve
[Link]@[Link]
[Link]

2
Plan
Architecture Docker
C’est quoi Docker ? Installation
3
1 5

2 6
4

Pourquoi Docker ? Demos


Quelques commandes
du Docker CLI

3
C’est quoi Docker ?
Docker est un moteur open source qui automatise le
déploiement de n'importe quelle application de
façon légère, portable et autonome qui fonctionnera
pratiquement n'importe où.

4
Pourquoi Docker ?
◇ L’isolation des processus
◇ Légèreté et rapidité .vs Machines Virtuelles
◇ Simplicité
◇ Interopérabilité (GitHub, GNS3, Ansible)
◇ Micros services
5
1 Architecture Docker
Docker Platform = Docker Engine + Docker Hub
Moteur (Docker Engine)
Docker Engine = Docker Daemon + Docker CLI

Le démon docker (Docker Daemon) est le service qui


s'exécute sur l'hôte docker et gère les commandes
docker que le client lance/exécute (Docker CLI).

Il est chargé de :
◇ Exécuter et gérer les conteneurs
◇ Construire les images
◇ Gere la communication Docker Hub/Docker CLI
7
Moteur (Docker Engine)
Docker Engine = Docker Daemon + Docker CLI

Le Docker CLI (Command-Line Interface) est un outil en


ligne de commande qui permet aux utilisateurs d'interagir
avec le service Docker.

Il fournit une interface pour :


◇ Le CRUD des images
◇ Le CRUD des conteneurs et leur déploiement
◇ La configuration du réseau et du stockage des conteneurs

8
Quelques commandes utiles
◇ docker run # créer un conteneur à partir d’une image
◇ docker ps # lister les conteneurs en cours (-a incl. stoppés)
◇ docker top # lister les processus actif dans le conteneur
◇ docker images # lister toutes les images présente sur l'hôte
◇ docker rmi # supprimer une image de l'hôte
◇ docker build # créer une image à partir du Dockerfile
◇ docker pull # créer une image à partir du Docker Hub
◇ docker commit # créer une image à partir d’un conteneur
9
Docker Hub
C’est un registre centralisé pour les images Docker.

Il permet aux utilisateurs de :


❏ Stocker leurs images docker
❏ Partager leurs images
❏ Télécharger des images prêt à l’emploi (Ubuntu,
Ngnix, MySQL, Apache2, Redis, Prometheus, etc)

Docker search #Rechercher des images dans le Hub.

docker search nanfacksteve


docker search MySQL
10
Architecture Docker (Composants)

11
2 Installation de Docker
[Link]
Installation
● Sudo apt-get update
● Sudo apt-get install ca-certificates curl gnupg
● sudo mkdir -m 0755 -p /etc/apt/keyrings
● curl -fsSL [Link] | sudo gpg --dearmor -o
/etc/apt/keyrings/[Link]
● echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/[Link]] \
[Link] "$(. /etc/os-release && echo
"$VERSION_CODENAME")" stable" | \ sudo tee /etc/apt/[Link].d/[Link] > /dev/null
● sudo apt-get update
● sudo apt-get install docker-ce docker-ce-cli [Link] docker-buildx-plugin
docker-compose-plugin

13
Pratiquons

3 Demo
“La théorie est importante, mais ne vaut rien si
elle n’est pas mise en pratique.” - Aton Chekhov
Conteneurs
❏ Lancer un conteneur
❏ Sortir sans arreter
❏ Rentrer dans un conteneur actif
❏ Inspecter son conteneur

15
Conteneur (Creat. + Inspect.)
Création
# Lance un conteneur nommé ubuntu de l’image ubuntu:22.04

docker run --rm -it --name my-ubuntu -h ubuntu ubuntu:22.04

Sortie + Récupération
# Ctrl + P suivi de Ctrl + Q pour sortir sans interruption

# Pour rentrer à nouveau dans son conteneur faire


docker exec -it my-ubuntu bash

Inspection
docker inspect my-ubuntu --format {{.[Link]}}
16
Dockerfile
Objectif : créer des images automatiquement à l'aide
d'un script de construction qui peut être versionné.

❏ Créer une image apache-test


❏ Accéder à une page web
depuis le Host
17
Workflow (Dockerfile)
18
Dockerfile
FROM ubuntu:22.04

RUN apt update && \


apt install apache2 apache2-utils -y

WORKDIR /var/www/html/

# Copie de “[Link]” dans “/var/www/html/”


COPY [Link] .

# Port d’ecoute
EXPOSE 80

CMD [“/usr/sbin/apache2ctl”, “-D”, “FOREGROUND”]


Execution
● docker build -t apache-test .
● id=$(docker run -it --name web-server -p 8080:80 -d apache-test)
● ip=$(docker inspect $id --format {{.[Link]}})
● curl [Link] ou curl $ip
19
Volumes
Objectif : rendre les données ou les changements
persistants

Montage des Volumes Hôtes

Partage des volumes

20
Volumes Docker

Volume Hote
# Map/Lie le répertoire ~/host de l'hôte avec celui de /opt du conteneur

docker run --rm -it --name test-volume-1 --hostname dev1 \


–volume ~/host:/opt debian

Partage de Volume
# Partage le volume du conteneur ‘test-volume-1’ avec ‘test-volume-2’

docker run --rm -it --name test-volume-2 -h dev2 \


--volumes-from test-volume-1 debian

21
Sauvegarde & Restauration

Enregistrer une image dans un


*.[Link]
Charger une image à partir d’un
*.[Link]

22
Sauvegarde + Restauration

Sauvegarde
# Enregistre l’image “apache-test” dans le “home” de “sun”

docker save apache-test -o /home/sun/image_apache2.[Link]

Restauration
# Restaure l’image “apache-test” à partir du fichier *.[Link]

docker load -i /home/sun/image_apache2.[Link]

23
Merci !
Des questions?
Vous pouvez me joindre sur :

◇ [Link]
◇ [Link]

24
Bibliographie
◇ [Link]
t-en-creant-des-conteneurs-avec-docker
◇ [Link]
◇ [Link]

25

Vous aimerez peut-être aussi