diff --git a/HowtoDocker.md b/HowtoDocker.md index 0a388a75..e8759d4c 100644 --- a/HowtoDocker.md +++ b/HowtoDocker.md @@ -8,7 +8,7 @@ Linux. Documentation : -# Ecosystème +# Écosystème ## Le démon docker et son client @@ -303,13 +303,13 @@ $ docker pull Éteindre/Tuer/Supprimer tous les conteneurs : ~~~ -$ docker stop|kill|rm $(docker ps -aq) +$ docker ps -aq |xargs -r docker stop|kill|rm ~~~ Supprimer toutes les images : ~~~ -$ docker rmi $(docker images -q) +$ docker images -q |xargs -r docker image rm ~~~ Démarrer un conteneur existant avec un shell bash (pour des fins de debug par exemple) : @@ -318,23 +318,6 @@ Démarrer un conteneur existant avec un shell bash (pour des fins de debug par e $ docker run -it IMAGE bash ~~~ -### Dépannage - -#### Problème de connectivité à l'intérieur des conteneurs -Solution: - -Redémarrer le service docker - -#### Espace insuffisant lors d'un build -Solutions: - -- Vérifier que le "build context" n'est pas trop grand. -- Modifier la variable d'environnement DOCKER_TMPDIR . -- Créer un fichier .dockerignore pour exclure des fichiers et répertoires - du "build context" - -*Build context: Tout ce qui se trouve à la racine du Dockerfile.* - ## Dockerfile Les fichiers _Dockerfile_ décrivent les étapes de construction d'une image. Ils @@ -669,6 +652,29 @@ $ docker stack deploy -c ma-stack.yml -c ma-stack.dev.yml ma-stack ## FAQ +> Les conteneurs ont des problèmes de connectivités entre eux/vers l'extérieur + +C'est très probablement lié à un outil manipulant les règles netfilter qui a +effacé les règles spécifiques à Docker, notamment dans la table _nat_. + +Pour restaurer les règles netfilter de Docker, il n'y a pas d'autre moyen que +de redémarrer le démon : + +~~~ +# /etc/init.d/docker restart +~~~ + +> Espace insuffisant lors du build d'une image + +Solutions: + +- Vérifier que le "build context" n'est pas trop grand. +- Modifier la variable d'environnement DOCKER_TMPDIR . +- Créer un fichier .dockerignore pour exclure des fichiers et répertoires + du "build context" + +*Build context: Tout ce qui se trouve à la racine du Dockerfile.* + > Lors d'un redéploiement d'une stack Docker (docker stack deploy), les services ne sont pas redémarrer avec la nouvelle image Vérifier que le tag _latest_ est bien précisé dans le nom de l'image dans le _docker-stack.yml_ :