Skip to content

Aide-mémoire des commandes Docker

Docker est un moteur de conteneurs d’applications open-source qui permet aux développeurs d’emballer leurs applications et leurs dépendances dans une image portable, qui peut ensuite être publiée sur n’importe quelle machine Linux ou Windows populaire, permettant ainsi la virtualisation. Les conteneurs utilisent un mécanisme de sandbox et sont complètement isolés les uns des autres.

Utilisation générale

Démarrer un conteneur en arrière-plan

docker run -d jenkins

Démarrer un conteneur interactif

docker run -it ubuntu bash

Démarrer un conteneur qui est automatiquement supprimé à l’arrêt

docker run --rm ubuntu bash 

Démarrer un conteneur avec redirection de ports

docker run -p 80:80 -d nginx 

Démarrer un conteneur nommé

docker run --name mydb redis 

Démarrer un conteneur arrêté

docker start mydb 

Arrêter un conteneur

docker stop mydb

Démarrer un conteneur et ajouter des métadonnées

docker run -d \ label=traefik.backend=jenkins jenkins

Construction d’images

Construire une image à partir du Dockerfile dans le répertoire courant

docker build --tag myimage . 

Forcer la reconstruction d’une image

docker build --no-cache . 

Convertir un conteneur en image

docker commit c7337 myimage 

Supprimer toutes les images inutilisées

docker rmi $(docker images -q -f "dangling=true")

Débogage

Se connecter à un conteneur en cours d’exécution

docker exec -it c7337 docker

Afficher les journaux d’activité d’un conteneur tournant en mode démon

docker logs -f c7337

Afficher les ports exposés du conteneur

docker port c7337

Volumes et Réseaux

Créer un volume local

docker volume create --name myvol 

Monter un volume lors du démarrage d’un conteneur

docker run -v myvol:/data redis

Détruire un volume

docker volume rm myvol 

Lister tous les volumes

docker volume ls

Créer un réseau local

docker network create mynet 

Connecter un conteneur au réseau lors du démarrage

docker run -d --net mynet redis

Connecter un conteneur à un réseau spécifique

docker network connect mynet c7337 

Déconnecter un conteneur du réseau

docker network disconnect mynet c7337

Gestion des conteneurs

Lister les conteneurs en cours d’exécution

docker ps

Lister tous les conteneurs (y compris ceux en cours d’exécution et arrêtés)

docker ps -a

Inspecter les métadonnées d’un conteneur

docker inspect c7337

Lister toutes les images locales disponibles

docker images

Supprimer tous les conteneurs arrêtés

docker rm $(docker ps --filter status=exited -q) 

Lister tous les conteneurs ayant un label spécifique

docker ps --filter label=traefik.backend

Interroger l’adresse IP d’un conteneur en cours d’exécution

docker inspect -f '{{ .NetworkSettings.IPAddress }}' c7337

Description

Nom de l’image

redis, jenkins, nginx

Nom du conteneur ou ID de commit

mydb  # Nom du conteneur 
c7337 # ID de commit