---
title: "Docker : petit résumé sur les commandes"
url: https://www.cyber-neurones.org/2016/05/docker-petit-resume-sur-les-commandes/
date: 2016-05-04
modified: 2019-08-05
author: "Frederic"
description: "Attention ceci est mon brouillon avant de faire une belle documentation sur Docker (il y a à boire et à manger). Quelques commandes : docker run : lancement d'un containers..."
categories:
  - "Docker"
tags:
  - "Docker"
word_count: 1061
---

# Docker : petit résumé sur les commandes

**Attention ceci est mon brouillon avant de faire une belle documentation sur Docker (il y a à boire et à manger).**

Quelques commandes :

- **docker run** : lancement d'un containers ou plutôt l'exécution. Il ne faut pas confondre **docker run** et **docker start**. Le run ou le fait qu'une seule fois. L'option **-p** permet la redirection de port , l'option **-v **permet le partage de fichier avec l'hôte, l'option **--link** permet de faire un lien entre deux containers via des macros. Je n'ai pas encore assez travailler sur **join** & **manage** pour expliquer le bon fonctionnement ( [Article n°14](https://www.cyber-neurones.org/2016/04/docker-le-quatorzieme-pas/), [Article n°13](https://www.cyber-neurones.org/2016/04/docker-le-treizieme-pas/), [Article n°11](https://www.cyber-neurones.org/2016/04/docker-le-onzieme-pas/), [Article n°10](https://www.cyber-neurones.org/2016/04/docker-le-dixieme-pas/), [Article n°9, ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/)[Article n°8,](https://www.cyber-neurones.org/2016/04/docker-le-huitieme-pas/)[ ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/)[Article n°7,](https://www.cyber-neurones.org/2016/04/docker-le-septieme-pas/)  [Article n°6,](https://www.cyber-neurones.org/2016/04/docker-le-sixieme-pas/) [Article n°5,](https://www.cyber-neurones.org/2016/04/docker-le-cinquieme-pas/) [Article n°4](https://www.cyber-neurones.org/2016/04/docker-le-quatrieme-pas/), [Article n°3](https://www.cyber-neurones.org/2016/04/docker-le-troisieme-pas/), [Article n°2](https://www.cyber-neurones.org/2016/04/docker-deuxieme-pas-ou-apres-hello-world/), [Article n°1](https://www.cyber-neurones.org/2016/04/docker-les-premiers-pas/) )
- **docker push** : pour pousser son image sur hub.docker.com , cela vient après docker login et docker commit  ( [Article n°16](https://www.cyber-neurones.org/2016/05/docker-le-seizieme-pas/), )
- **docker search** : pour chercher une images. ( [Article n°16](https://www.cyber-neurones.org/2016/05/docker-le-seizieme-pas/), [Article n°3](https://www.cyber-neurones.org/2016/04/docker-le-troisieme-pas/), )
- **docker logs** : voir des logs.( [Article n°11](https://www.cyber-neurones.org/2016/04/docker-le-onzieme-pas/), [Article n°9, ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/)[Article n°8,](https://www.cyber-neurones.org/2016/04/docker-le-huitieme-pas/)[ ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/)[Article n°7,](https://www.cyber-neurones.org/2016/04/docker-le-septieme-pas/) )
- **docker pull** : prendre une image, c'est la commande que l'on fait après avoir trouvé l'image via **docker search**. ( [Article n°16](https://www.cyber-neurones.org/2016/05/docker-le-seizieme-pas/), [Article n°8,](https://www.cyber-neurones.org/2016/04/docker-le-huitieme-pas/) [Article n°5,](https://www.cyber-neurones.org/2016/04/docker-le-cinquieme-pas/) )
- **docker rmi** : supprimer une image. ( [Article n°4](https://www.cyber-neurones.org/2016/04/docker-le-quatrieme-pas/), [Article n°2](https://www.cyber-neurones.org/2016/04/docker-deuxieme-pas-ou-apres-hello-world/), [Article n°1](https://www.cyber-neurones.org/2016/04/docker-les-premiers-pas/) )
- **docker ps** ou **docker ps -a** : voir les containers qui tournent. ( [Article n°15,](https://www.cyber-neurones.org/2016/04/docker-le-quinzieme-pas/) [Article n°13](https://www.cyber-neurones.org/2016/04/docker-le-treizieme-pas/), [Article n°11](https://www.cyber-neurones.org/2016/04/docker-le-onzieme-pas/), [Article n°10](https://www.cyber-neurones.org/2016/04/docker-le-dixieme-pas/), [Article n°9, ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/)[Article n°8,](https://www.cyber-neurones.org/2016/04/docker-le-huitieme-pas/)[ ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/)[Article n°7,  ](https://www.cyber-neurones.org/2016/04/docker-le-septieme-pas/)[Article n°6,](https://www.cyber-neurones.org/2016/04/docker-le-sixieme-pas/)[ ](https://www.cyber-neurones.org/2016/04/docker-le-septieme-pas/)[Article n°3](https://www.cyber-neurones.org/2016/04/docker-le-troisieme-pas/)[,](https://www.cyber-neurones.org/2016/04/docker-le-septieme-pas/) )
- **docker -H ... ps** : voir les containers qui tourne via la Remote API. ( [Article n°17](https://www.cyber-neurones.org/2016/05/docker-le-dix-septieme-pas/), )
- **docker rm** : supprimer des containers. ( [Article n°10](https://www.cyber-neurones.org/2016/04/docker-le-dixieme-pas/), [Article n°4](https://www.cyber-neurones.org/2016/04/docker-le-quatrieme-pas/), )
- **docker build -t nom .** : construire un containers. ( [Article n°14](https://www.cyber-neurones.org/2016/04/docker-le-quatorzieme-pas/), [Article n°11](https://www.cyber-neurones.org/2016/04/docker-le-onzieme-pas/), [Article n°9, ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/)[Article n°8,](https://www.cyber-neurones.org/2016/04/docker-le-huitieme-pas/)[ ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/)[Article n°7,](https://www.cyber-neurones.org/2016/04/docker-le-septieme-pas/)  [Article n°6,](https://www.cyber-neurones.org/2016/04/docker-le-sixieme-pas/) [Article n°4](https://www.cyber-neurones.org/2016/04/docker-le-quatrieme-pas/), [Article n°3](https://www.cyber-neurones.org/2016/04/docker-le-troisieme-pas/), )
- **docker start** : lancement d'un container. ( [Article n°17](https://www.cyber-neurones.org/2016/05/docker-le-dix-septieme-pas/), [Article n°11](https://www.cyber-neurones.org/2016/04/docker-le-onzieme-pas/), )
- **docker stop** : arrêt d'un container. ( [Article n°17](https://www.cyber-neurones.org/2016/05/docker-le-dix-septieme-pas/), [Article n°14](https://www.cyber-neurones.org/2016/04/docker-le-quatorzieme-pas/), [Article n°11](https://www.cyber-neurones.org/2016/04/docker-le-onzieme-pas/), [Article n°10](https://www.cyber-neurones.org/2016/04/docker-le-dixieme-pas/), [Article n°9, ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/)[Article n°5,](https://www.cyber-neurones.org/2016/04/docker-le-cinquieme-pas/)[ ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/))
- **docker restart** : relancer un container. ( [Article n°14](https://www.cyber-neurones.org/2016/04/docker-le-quatorzieme-pas/), )
- **docker images** : voir toutes les images disponibles. ( [Article n°4](https://www.cyber-neurones.org/2016/04/docker-le-quatrieme-pas/), )
- **docker login** : pour se connecter sur son compte hub.docker.com . ( [Article n°16](https://www.cyber-neurones.org/2016/05/docker-le-seizieme-pas/), )
- **docker commit** : pour faire un commit de son image dans le but de la mettre sour hub.docker.com ( [Article n°16](https://www.cyber-neurones.org/2016/05/docker-le-seizieme-pas/), )
- **docker history** : cela permet de connaitre la taille d'une image, enfin je ne m'en sert que pour cela :) . ( [Article n°14](https://www.cyber-neurones.org/2016/04/docker-le-quatorzieme-pas/), )
- **docker network inspect bridge** : pour avoir la configuration réseau des containers ( [Article n°11](https://www.cyber-neurones.org/2016/04/docker-le-onzieme-pas/), )
- **docker inspect** : cela permet d'avoir des informations (nom, stockage, ...)  sur un container. ( [Article n°7,](https://www.cyber-neurones.org/2016/04/docker-le-septieme-pas/) )
- **docker exec env** : permet de voir toutes les variables d'environnement d'un container. (  [Article n°6,](https://www.cyber-neurones.org/2016/04/docker-le-sixieme-pas/) )
- **docker info** : permet de savoir la version de docker que l'on utilise ( [Article n°3](https://www.cyber-neurones.org/2016/04/docker-le-troisieme-pas/), [Article n°1](https://www.cyber-neurones.org/2016/04/docker-les-premiers-pas/) )
- **docker version** : permet de connaitre la version du serveur et du client docker qui est utilisé. ([Article n°1](https://www.cyber-neurones.org/2016/04/docker-les-premiers-pas/) )

Quelques serveurs :

- [PostgreSQL](http://www.postgresql.org) : serveur de base de donnée. C'est simplement le meilleur :) . L'outil **psql** permet de se connecter à la base de donnée en ligne de commande. ( [Article n°10](https://www.cyber-neurones.org/2016/04/docker-le-dixieme-pas/), )
- [HAproxy](http://www.haproxy.org) : serveur de répartition de charge.  ( [Article n°10](https://www.cyber-neurones.org/2016/04/docker-le-dixieme-pas/), [Article n°9, ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/)[Article n°8,](https://www.cyber-neurones.org/2016/04/docker-le-huitieme-pas/)[ ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/))
- [NGinx](http://nginx.org) : serveur de répartition de charge.  ( [Article n°10](https://www.cyber-neurones.org/2016/04/docker-le-dixieme-pas/), )
- Server8 : le meilleur serveur au monde pour le protocole Hello World, je dis pas cela parce que c'est moi qui l'ai fait ;) . ( [Article n°14](https://www.cyber-neurones.org/2016/04/docker-le-quatorzieme-pas/), )
- etcd & confd : serveur dynamique de configuration, mais cela fonctionne bien que sous [CoreOS](https://coreos.com). ( [Article n°12](https://www.cyber-neurones.org/2016/04/docker-le-douzieme-pas/), )
- [Syslog](https://fr.wikipedia.org/wiki/Syslog) : service de journalisation . ( [Article n°9, ](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/))

Quelques outils :

- **curl** : client HTTP/HTTPS en ligne de commande. ( [Article n°17](https://www.cyber-neurones.org/2016/05/docker-le-dix-septieme-pas/), )
- **gcc** : pour faire la compilation d'un programme en C . ( [Article n°13](https://www.cyber-neurones.org/2016/04/docker-le-treizieme-pas/), )
- **netstat** : pour avoir des statistiques sur le réseau. ( [Article n°11](https://www.cyber-neurones.org/2016/04/docker-le-onzieme-pas/), [Article n°2](https://www.cyber-neurones.org/2016/04/docker-deuxieme-pas-ou-apres-hello-world/), )
- **yum** : pour installer un package sous [Oracle Linux](https://www.oracle.com/fr/technologies/linux/overview/index.html) & Redhat . La suite de yum semble être **dnf** ( [Article n°11](https://www.cyber-neurones.org/2016/04/docker-le-onzieme-pas/), [Article n°6,](https://www.cyber-neurones.org/2016/04/docker-le-sixieme-pas/) [Article n°2](https://www.cyber-neurones.org/2016/04/docker-deuxieme-pas-ou-apres-hello-world/), [Article n°1](https://www.cyber-neurones.org/2016/04/docker-les-premiers-pas/) )
- **tcpdump** : pour snifer le réseau, c'est l'arme lourde pour comprendre ;) .  ( [Article n°11](https://www.cyber-neurones.org/2016/04/docker-le-onzieme-pas/), )
- **telnet** : permet d'ouvrir une connexion en TCP/IP, c'est pratique pour faire des tests. ( [Article n°10](https://www.cyber-neurones.org/2016/04/docker-le-dixieme-pas/), [Article n°8,](https://www.cyber-neurones.org/2016/04/docker-le-huitieme-pas/) )
- **vi** : le meilleur éditeur de l'univers . ( [Article n°2](https://www.cyber-neurones.org/2016/04/docker-deuxieme-pas-ou-apres-hello-world/), )

Quelques commandes linux :

- **crontab** : Pour modifier la crontab qui permet de faire des taches planifiées. ( [Article n°15,](https://www.cyber-neurones.org/2016/04/docker-le-quinzieme-pas/) )
- **ss** : statistique réseau ( [Article n°3](https://www.cyber-neurones.org/2016/04/docker-le-troisieme-pas/), )
- **ln -s** : création d'un lien symbolique ( [Article n°2](https://www.cyber-neurones.org/2016/04/docker-deuxieme-pas-ou-apres-hello-world/), )
- **df -h** : connaitre l'espace disque ( [Article n°2](https://www.cyber-neurones.org/2016/04/docker-deuxieme-pas-ou-apres-hello-world/), [Article n°1](https://www.cyber-neurones.org/2016/04/docker-les-premiers-pas/) )
- **mkdir** : création d'un répertoire ( [Article n°2](https://www.cyber-neurones.org/2016/04/docker-deuxieme-pas-ou-apres-hello-world/), )
- **uname -a** : permet de connaitre le nom de l'hôte et la version de l'OS de l'hôte ( [Article n°1](https://www.cyber-neurones.org/2016/04/docker-les-premiers-pas/) )

Rappel :

- Le lien pour voir uniquement les articles sur Docker : [https://www.cyber-neurones.org/tag/docker/ ](https://www.cyber-neurones.org/tag/docker/)

Tableau de résumé des articles :

| Post n° | Intérêt | Résumé |
| -------- | --------- | -------- |
| [1](https://www.cyber-neurones.org/2016/04/docker-les-premiers-pas/) | 20% | Mauvaise installation à cause de la partition Docker. Mais début des commandes sous Docker : **docker run** , **docker rmi,** **docker run**, **docker ps**, |
| [2](https://www.cyber-neurones.org/2016/04/docker-deuxieme-pas-ou-apres-hello-world/) | 70% | On voit l'intérêt de l'ajout de la partition **Btrfs**, on découvre le fichier **Dockerfile** qui est utilisé pour faire les **docker build**. |
| [3](https://www.cyber-neurones.org/2016/04/docker-le-troisieme-pas/) | 70% | On a vu la redirection de port avec l'option **-p** . Et aussi **docker search** qui permet de voir tous les containers existant. On a aussi l'installation du container PostgreSQL. |
| [4](https://www.cyber-neurones.org/2016/04/docker-le-quatrieme-pas/) | 50% | Installation du container PostgreSQL mais pas comme je l'aurai voulu car je n'arrive pas à initialiser les utilisateurs dans le **Dockerfile**. Et les sources de **server.c** . |
| [5](https://www.cyber-neurones.org/2016/04/docker-le-cinquieme-pas/) | 30% | Découverte de la commande **docker run swarn**. J'ai pas vraiment approfondi la notion. |
| [6](https://www.cyber-neurones.org/2016/04/docker-le-sixieme-pas/) | 60% | Un nouveau serveur : **server2.c **, on découvre la commande** docker exec env. **On a aussi la création d'un **server3.c** qui exploite les liens entre containers (**--link**) |
| [7](https://www.cyber-neurones.org/2016/04/docker-le-septieme-pas/) | 10% | Un échec complet sur l'installation de HAproxy. |
| [8](https://www.cyber-neurones.org/2016/04/docker-le-huitieme-pas/) | 80% | Bonne configuration de NGINX et de HAproxy. |
| [9](https://www.cyber-neurones.org/2016/04/docker-neuvieme-pas/) | 10% | Un échec complet sur la redirection des logs syslog vers un autre serveur. |
| [10](https://www.cyber-neurones.org/2016/04/docker-le-dixieme-pas/) | 90% | La création d'un **server5.c** qui permet de faire des insertions dans la base, d'envoyer des logs à **syslog** et de tester les configuration de HAproxy et Nginx. |
| [11](https://www.cyber-neurones.org/2016/04/docker-le-onzieme-pas/) |  40% |  Résumé, impasse sur syslog. |
| [12](https://www.cyber-neurones.org/2016/04/docker-le-douzieme-pas/) |  10% |  Un échec complet sur etcd & confd. |
| [13](https://www.cyber-neurones.org/2016/04/docker-le-treizieme-pas/) |  40% |  Notion de partage de fichier avec le OS hôte. |
| [14](https://www.cyber-neurones.org/2016/04/docker-le-quatorzieme-pas/) | 30% |  Création dynamique de container via des scripts BASH. Et notion de partage de fichier. |
| [15](https://www.cyber-neurones.org/2016/04/docker-le-quinzieme-pas/) | 50% |  Lancement automatique de container via des scripts BASH. |
| [16](https://www.cyber-neurones.org/2016/05/docker-le-seizieme-pas/) | 80% |  Notion de base sur GitHub & le Hub de Docker. |
| [17](https://www.cyber-neurones.org/2016/05/docker-le-dix-septieme-pas/) | 80% |  Notion de base sur la Remote API de Docker. |

Je savais bien qu'un petit résumé était nécessaire, après 17 jours sur Docker on commence à mieux comprendre le fonctionnement et les avantages.

Les livres sur Docker :