18
0
Fork 0

HowtoDocker : divers ajustements :

- déplacement section Dépanage dans FAQ
  - utilisation de xargs -r pour combiner plusieurs commandes docker
  (pas d'erreur si la première retourne rien)
This commit is contained in:
Romain Dessort 2018-05-11 10:22:27 -04:00
parent 6761062fbc
commit c9456908af
1 changed files with 26 additions and 20 deletions

View File

@ -8,7 +8,7 @@ Linux.
Documentation : <https://docs.docker.com/>
# Ecosystème
# Écosystème
## Le démon docker et son client
@ -303,13 +303,13 @@ $ docker pull <image>
É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_ :