Lorsque je lance 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"
L'ancien cache était à l'origine de ce problème. Je n'ai pas réussi à exécuter cette commande pour la première fois et docker-compose des images déjà créées que je ne peux pas voir depuis docker images
.
Vous devez vérifier à partir de docker-compose ps
et supprimer toutes les anciennes images avec cette commande docker-compose rm
, puis reconstruire à nouveau.
J'ai rencontré cette erreur lors de l'utilisation de Docker Machine sous Windows.
Un conteneur semble être devenu malhonnête; docker-compose rm --all
a bloqué tout le shell et le redémarrage de Docker Machine n'a pas aidé non plus, le conteneur est quand même apparu avec docker-compose ps
.
docker-compose down
.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
Le problème a été résolu pour moi en faisant
docker-compose ps
trouver le nom du conteneur qui pose problème, puis (notez l'exécution de docker
ici)
docker rm <problematic container name>
Des exemples utilisant weba, webb et webc tels que " Comment utiliser Docker Compose pour exécuter des applications multi-conteneurs complexes sur votre Raspberry Pi " supposons que vous construisez ces images.
weba:
build: .
expose:
- 80
Ce qui signifie que vous avez (dans /home/benson/Docker/HaproxyMy
) une Dockerfile
comme celle-ci qui sera interprétée par la construction. pour construire ces images.