Existe-t-il une commande/option permettant d'afficher ou de répertorier le contexte envoyé au démon Docker pour la construction d'une image?
$ docker build -t "image-name"
Sending build context to Docker daemon 8.499 MB
...
Les fichiers et les répertoires peuvent être exclus du contexte de construction en spécifiant des modèles dans un fichier .dockerignore
. Je suppose que ce que je recherche revient à tester le .dockerignore
en plus de toute autre règle de niche utilisée par Docker pour déterminer le contexte.
Le seul moyen serait d'ajouter le répertoire actuel à un répertoire spécifique et de le répertorier.
Essayez de construire avec ce fichier Dockerfile:
FROM busybox
RUN mkdir /tmp/build/
# Add context to /tmp/build/
COPY . /tmp/build/
Construisez-le avec:
docker build -t test .
Répertoriez tous les fichiers et répertoires de/tmp/build:
docker run --rm -it test find /tmp/build
Réponse mise à jour: depuis 2017, Docker a recommandé d'utiliser COPY
au lieu de ADD
et avec le commentaire de @tlrobinson, le fichier Dockerfile plus simple ressemble à ceci:
# debug and list the docker build context so that you can minimmize it
#
# usage:
# docker build -f docker/context.Dockerfile -t test/buildcontext .
#
######################
FROM busybox
RUN mkdir /tmp/build/
# Add context to /tmp/build/
COPY . /tmp/build
# this last command outputs the list of files added to the build context:
RUN find /tmp/build/