Différences entre les versions de « Docker »
Ligne 2 : | Ligne 2 : | ||
Docker permet de gérer des conteneurs qui sont plus léger que les machines virtuelles.</br> | Docker permet de gérer des conteneurs qui sont plus léger que les machines virtuelles.</br> | ||
Les images Docker permettent de gérer une configuration. Le conteneur Docker est une insrtance d'une image Docker.</br> | |||
On peut créer des images Docker avec le fichier DockerFile et la commande <code>docker build -t nomimage .</code></br> | |||
Il est possible de faire des environnements utilisant plusieurs conteneurs. | |||
Pour se faire, on va utiliser '''docker compose''' liée à un fichier de configuration '''docker-compose.yml'''.</br> | |||
Si docker est déjà installé, il faut le supprimer</br> | Si docker est déjà installé, il faut le supprimer</br> | ||
=Installation= | |||
<code>sudo apt remove docker docker-engine docker.io containerd runc</code> | <code>sudo apt remove docker docker-engine docker.io containerd runc</code> | ||
Ligne 29 : | Ligne 36 : | ||
<code>sudo systemctl enable docker.service</br> | <code>sudo systemctl enable docker.service</br> | ||
sudo systemctl enable containerd.service</code> | sudo systemctl enable containerd.service</code> | ||
=Utilisation= | |||
==Lancer un conteneur | =Utilisation := | ||
<code>docker run debian:latest</code></br> | ==Commandes utiles :== | ||
Lancer un conteneur Debian : <code>docker run debian:latest</code></br> | |||
Lister les images disponibles en local sur la machine : <code>docker image ls</code></br> | |||
==Gestion des fichiers== | |||
Il existe 3 types de montages. | Il existe 3 types de montages. | ||
* volume : géré par Docker volume. Les données sont stockées dans /var/lib/docker/volumes ; | * volume : géré par Docker volume. Les données sont stockées dans /var/lib/docker/volumes ; | ||
Ligne 37 : | Ligne 48 : | ||
* tmpfs : Les données ne sont pas persistées. | * tmpfs : Les données ne sont pas persistées. | ||
Pour utiliser le bind mount, on pourra utiliser la commande '''docker run -d --name c1 --mount type=bind,source=/home/user/dossier/,destination=/var/www/html/ ubuntu/apache2:latest''' | Pour utiliser le bind mount, on pourra utiliser la commande '''docker run -d --name c1 --mount type=bind,source=/home/user/dossier/,destination=/var/www/html/ ubuntu/apache2:latest''' | ||
=Bibliographie= | =Bibliographie= | ||
GitHub de Noobosaurus-r3x qui parles de Docker : https://github.com/noobosaurus-r3x/Docker---Commandes-de-la-video/blob/main/Install%20Docker%20(Debian) | GitHub de Noobosaurus-r3x qui parles de Docker : https://github.com/noobosaurus-r3x/Docker---Commandes-de-la-video/blob/main/Install%20Docker%20(Debian) | ||
Documentation officielle de Docker : https://docs.docker.com/ | Documentation officielle de Docker : https://docs.docker.com/ |
Version du 24 mars 2023 à 15:00
Présentation
Docker permet de gérer des conteneurs qui sont plus léger que les machines virtuelles.
Les images Docker permettent de gérer une configuration. Le conteneur Docker est une insrtance d'une image Docker.
On peut créer des images Docker avec le fichier DockerFile et la commande docker build -t nomimage .
Il est possible de faire des environnements utilisant plusieurs conteneurs.
Pour se faire, on va utiliser docker compose liée à un fichier de configuration docker-compose.yml.
Si docker est déjà installé, il faut le supprimer
Installation
sudo apt remove docker docker-engine docker.io containerd runc
Il faut dans un premier temps mettre à jour les dépôts
sudo apt update
Puis il faut installer les pré requis nécessaires
sudo apt install ca-certificates curl gnupg lsb-release
Il faut ensuite installer les certificats avec les commandes suivantes :
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
Ensuite on installe le dépôt Docker dans le /etc/apt/sources.list/d pour Debian :
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Dans le cas de Ubuntu, il faut remplacer Debian par Ubuntu. La liste complète des distros dispo se trouve sur https://download.docker.com/linux/
On installe ensuite les paquets nécessaires à Docker proprement dit
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin
On crée le groupe qui utilisera le service docker, si ce dernier n'existe pas et l'ajouter à l'utilisateur courant.
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker #pour activer le nouveau chgt aux groupes
On active le service docker et containerd
sudo systemctl enable docker.service
sudo systemctl enable containerd.service
Utilisation :
Commandes utiles :
Lancer un conteneur Debian : docker run debian:latest
Lister les images disponibles en local sur la machine : docker image ls
Gestion des fichiers
Il existe 3 types de montages.
- volume : géré par Docker volume. Les données sont stockées dans /var/lib/docker/volumes ;
- bind : dossier de l'hôte ;
- tmpfs : Les données ne sont pas persistées.
Pour utiliser le bind mount, on pourra utiliser la commande docker run -d --name c1 --mount type=bind,source=/home/user/dossier/,destination=/var/www/html/ ubuntu/apache2:latest
Bibliographie
GitHub de Noobosaurus-r3x qui parles de Docker : https://github.com/noobosaurus-r3x/Docker---Commandes-de-la-video/blob/main/Install%20Docker%20(Debian) Documentation officielle de Docker : https://docs.docker.com/