126 votes

Docker Compose : Aucune image

Quand je cours docker-compose up j'obtiens cette erreur :

root@ubuntu:/home/benson/Docker/HaproxyMy# docker-compose up
Recreating 950ddc308278_950ddc308278_950ddc308278_950ddc308278_950ddc308278_haproxymy_webb_1
Recreating 485800bdf3a1_485800bdf3a1_485800bdf3a1_485800bdf3a1_485800bdf3a1_haproxymy_webc_1
Recreating 2b3338d88716_2b3338d88716_2b3338d88716_2b3338d88716_2b3338d88716_haproxymy_weba_1

ERROR: for webb  No such image: sha256:15853e771e7ca3f5eecee38fcf97efd3ee164c1b66e2ef543d9985a04e78e099

ERROR: for webc  No such image: sha256:15853e771e7ca3f5eecee38fcf97efd3ee164c1b66e2ef543d9985a04e78e099

ERROR: for weba  No such image: sha256:15853e771e7ca3f5eecee38fcf97efd3ee164c1b66e2ef543d9985a04e78e099

docker-compose.yml :

weba:
    build: ./web
    expose:
        - 80

webb:
    build: ./web
    expose:
        - 80

webc:
    build: ./web
    expose:
        - 80

haproxy:

    image: haproxy:latest

    volumes:

        - ./haproxy:/haproxy-override
        - ./haproxy/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro
    links:

        - weba
        - webb
        - webc
    ports:

        - "80:80"
        - "70:70"
    expose:

        - "80"
        - "70"

257voto

Bensson Points 2558

L'ancien cache a causé ce problème, je n'ai pas réussi à exécuter cette commande la première fois et docker-compose a déjà créé des images que je ne peux pas voir à partir de docker images .

Il faut vérifier à partir de docker-compose ps et supprimez toutes les anciennes images avec cette commande docker-compose rm puis reconstruire à nouveau.

2 votes

Regardez aussi la réponse de Shiva. Tu te demandes pourquoi il a fallu presque un an pour améliorer celle-ci ? Allez, SO !

2 votes

stackoverflow.com/a/43381147/8283848 ceci fera la magie parfaitement ( pour moi)

1 votes

Il serait bon de mentionner que docker-compose rm est sans paramètre suivant id de l'image, contrairement au cas de docker rmi #id. Sinon je n'ai pas pu supprimer un nom existant d'une image docker-compose qui a été sortie et effacée via docker rmi 2d0c8d6058f4_myprojectcom_app_1

130voto

Matthias Braun Points 1114

J'ai rencontré cette erreur en utilisant Machine Docker sur Windows.

Un conteneur semble s'être égaré ; docker-compose rm --all a provoqué le gel de l'ensemble du shell et le redémarrage de Docker Machine n'a pas aidé non plus, le conteneur s'affichant toujours lors de l'exécution de la commande docker-compose ps .

La solution était d'exécuter docker-compose down .

0 votes

Le meilleur moyen est de supprimer uniquement les images défaillantes avec docker-compose rm webb webc weba et ensuite tirer ou construire un nouveau

1 votes

@OzzyCzech Je suis sûr que c'était utile dans votre situation. Mais dans la mienne docker-compose rm a gelé ma coquille.

0 votes

Je n'ai pas eu de problème de gel mais docker-compose rm --all ne supprimait pas toutes les images. docker-compose down a corrigé le problème. (Ubuntu 16)

48voto

shiva Points 10

Pour résoudre ce problème

docker-compose -f docker-compose-filename.yml down

docker-compose -f docker-compose-filename.yml up

Pour voir toutes les images

docker images -a

1 votes

Le problème concerne les images manquantes et en tant que tel up et down Les commandes ne fonctionnent pas. La bonne réponse est d'utiliser docker-compose rm à des images claires et build -> up encore.

2 votes

Bhargav Monsieur, Vous devez faire plus de recherches avant de déclasser une réponse, surtout si vous n'avez pas assez d'expérience avec cette technologie. Ou vous pouvez au moins voir les réponses précédentes (par Matthias Braun) qui disent la même chose que docker-compose down va résoudre le problème. Il a résolu le problème pour moi aussi avec d'autres personnes (mac - 10.11.5) (docker - 17.03.1-ce).

0 votes

Il a mentionné l'utilisation rm et aussi dans un commentaire sous sa réponse.

21voto

srt32 Points 315

Le problème a été résolu pour moi en faisant

docker-compose ps

trouver le nom du conteneur qui pose problème, puis (attention à l'exécution de docker ici)

docker rm <problematic container name>

0voto

VonC Points 414372

Exemples utilisant weba, webb et webc comme " Comment utiliser Docker Compose pour exécuter des applications complexes à plusieurs conteneurs sur votre Raspberry Pi ? "Supposons que vous construisiez ces images.

weba:
  build: .
  expose:
    - 80

Ce qui signifie que vous avez (en /home/benson/Docker/HaproxyMy ) a Dockerfile comme celui-ci qui sera interprété par le build . pour construire ces images.

0 votes

Merci, j'ai trouvé le cas de base, l'ancien cache a causé ce problème, merci. Je vais écrire les étapes ci-dessous.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X