Les commandes Docker

De Wiki de Mémoire Vive
Aller à la navigation Aller à la recherche

1. Installation de Docker

Installation de Docker sous Debian 13

2. Gestion du service Docker sous Debian

Sous Debian, connectez-vous en administrateur root (su), sudo est utilisé sous linux Mint.

Pour commencer, vérifiez si le service est actif.

Commande Description
systemctl start docker Démarrer le service Docker
systemctl stop docker Arrêter le service Docker
systemctl enable docker Activer Docker au démarrage du système
systemctl status docker Vérifier le statut du service Docker

Voir également "Services et systemd" :


Un conteneur s'exécute à partir d'une image Docker.

L'image sert de modèle pour créer et lancer un ou plusieurs conteneurs. Quand vous utilisez la commande docker run, Docker utilise l'image spécifiée pour créer un nouveau conteneur et le démarrer.

3. Recherches et téléchargements des images :

Recherche d’un conteneur Debian sur le Hub de Docker :

docker search debian

Pour télécharger une image nommé debian depuis le Hub :

docker pull debian

4. Démarrer un conteneur :

Télécharger l'image du container hello-world et l'exécuter.

docker run hello-world

Pour démarrer le conteneur nommé debian en tâche de fond. (Le conteneur est téléchargé si cela n’a pas été fait auparavant – voir les paramètres pour les ports si nécessaire) :

docker run -d debian

Pour démarrer le conteneur nommé debian et se connecter dessus :

docker run -ti debian

ou

docker run -ti debian /bin/bash

Démarre un conteneur arrêté.

docker start hello-world

Redémarrer un conteneur.

docker restart hello-world

5. Arrêter un conteneur :

Arrêter un conteneur en cours d’exécution.

docker stop hello-world

Depuis le dossier où se trouvent les fichiers de configuration docker-compose.yml et docker-compose.env.

docker compose down

Cette commande arrête tous les conteneurs configurés avec les fichiers de manière propre, sans perdre de données.

6. Lister les conteneurs :

Pour voir les conteneurs en cours d’exécution :

docker ps

Lister tous les containers Docker enregistrés sur votre machine, peu importe l'état (voir l’ID).

docker ps -a

7. Supprimer les conteneurs :

Supprimer un conteneur arrêté.

docker rm hello-world

Force la suppression d’un conteneur en cours d’exécution.

docker rm -f hello-world

Supprimer un container Docker à partir de son ID.

docker rm xxxxxxxxxxxx

il est tout à fait possible d’utiliser uniquement les trois premiers caractères de l’ID (SID) d’un conteneur ou d’une image, à condition que cette troncature soit unique parmi les éléments présents sur ta machine.

docker rm xxx

8. Gestion des images :

Pour voir les images déjà téléchargées depuis le Hub:

docker images

Pour supprimer une image :

docker rmi nom_image

Pour voir les différences entre le conteneur actif et l’image d’origine (xxx = trois premier caractères du conteneur id) :

docker diff xxx

Pour sauvegarde un conteneur actif dans une nouvelle image (xxx = trois premier caractères du conteneur id) :

docker commit xxx nom_nouvelle_image

Pour sauvegarder une image dans une archive en vue de son exportation :

docker save nom_image > /dossier/dossier/nom_archive.tar

Pour créer une image depuis une archive :

docker load -i /dossier/dossier/nom_archive.tar > nom_image

Construire une image à partir d’un Dockerfile :

docker build -t nom_image

Les Dockerfiles sont des fichiers texte qui contiennent une série d’instructions pour construire une image Docker personnalisée. Une image Docker est un modèle immuable qui sert de base pour lancer des conteneurs. Le fichier se nomme simplement Dockerfile.

9. Les logs :

Affiche les logs d’un conteneur.

docker logs hello-world

ou

docker logs -f hello-world

ou

docker logs --tail 50 hello-world

10. Accéder au SHELL des conteneurs :

docker exec -it mon_conteneur sh

ou

docker exec -it mon_conteneur bash

On quitte avec :

exit

11. Vérifiez les ressources système :

Un manque de mémoire ou de CPU peut aussi causer des redémarrages. Vérifiez l’utilisation des ressources :

docker stats

Pour vérifier l’espace disque :

docker system df

12. Aide :

Versions installées :

docker --version

Aide en ligne :

docker --help
docker COMMAND --help

13. Docker Compose :

Docker Compose est un outil permettant de définir et d'exécuter des applications multi-conteneurs. Il est essentiel pour une expérience de développement et de déploiement simplifiée et efficace.

Compose simplifie la gestion de l'ensemble de votre pile applicative, facilitant ainsi la gestion des services, des réseaux et des volumes dans un unique fichier de configuration YAML. Ensuite, une simple commande suffit pour créer et démarrer tous les services à partir de ce fichier.

voir : Installation de Docker sous Debian 13

Sur Debian 12/13, Docker Compose est généralement installé avec Docker Engine sous forme de plugin. Vérifiez sa présence avec :

docker compose version

Depuis le dossier où se trouve le fichier YAML généralement nommé docker-compose.yml qui définit les services, réseaux et volumes de votre application :

docker compose up -d

Si on veut mettre à jour un conteneur installé avec Docker Compose

Exemple si on veut modifier le fichier docker-compose.yml d'un conteneur existant déjà :

Frigate - Exemple si l’on veut modifier le fichier docker-compose.yml

Exemple si onveut Modifier le fichier config.yml d'un conteneur existant déjà :

Forcer TCP uniquement pour RTSP avec Frigate (recommandé si on utilise un pare-feu)

Arrêter et supprimer les conteneurs

Depuis le dossier où se trouvent les fichiers de configuration docker-compose.yml et docker-compose.env :

docker compose down

Cette commande arrête tous les conteneurs configurés avec les fichiers de manière propre, sans perdre de données.

Exemple après avoir modifié les fichiers de configuration, pour appliquer les changements :

docker-compose down && docker-compose up -d

Résumé

Commande Description
sdocker compose up -d Démarrer tous les services en arrière-plan
docker compose down Arrêter et supprimer les conteneurs, réseaux, volumes
docker compose ps Lister les conteneurs des services
docker compose logs <service> Afficher les logs d’un service spécifique
docker compose build Reconstruire les images des services
docker compose pull Télécharger les images des services
docker compose restart Redémarrer les services

14. Installations réalisées :

Installation d’Uptime Kuma avec Docker

Installation d’un conteneur Docker Frigate dans une machine virtuelle sous Debian 13 hébergée par Proxmox

Installation de Paperless-ngx avec Docker Compose sous Debian 13

À voir pour accéder au shell du container :

Installation WiseMapping avec Docker