当我运行docker-compose up
时,我得到这个错误:
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"
8条答案
按热度按时间c9x0cxw01#
旧的缓存导致了这个问题,我第一次运行这个命令失败,docker-compose已经创建了图像,我不能从
docker images
看到这些图像。需要从
docker-compose ps
开始检查,并使用此命令docker-compose rm
删除所有旧映像,然后再次重建。vaqhlq812#
我在Windows上使用Docker Machine时遇到此错误。
一个集装箱似乎已经失控;
docker-compose rm --all
导致整个shell冻结,重新启动Docker Machine也没有帮助,执行docker-compose ps
时容器仍然显示。解决方案是执行
docker-compose down
。w3nuxt5m3#
为了解决这个问题
查看所有图像
ehxuflar4#
我通过以下操作解决了问题
查找有问题的容器名称,然后(注意此处运行
docker
)tmb3ates5#
在Ubuntu 18.04.4和Docker版本19.03.6上
我试过尤格什·亚达夫的答案,但是
$ docker-compose -f文件名.yml up
命令冻结我的终端运行'当前锁'。
我可以通过列出容器来解决这个问题:
以及逐个移除有问题的容器,运行:
zlwx9yxi6#
使用weba、webb和webc的示例,如“How to use Docker Compose to run complex multi container apps on your Raspberry Pi“,假设您正在构建这些映像。
这意味着您(在
/home/benson/Docker/HaproxyMy
中)有一个Dockerfile
like this one,它将由构建来解释。以构建这些映像。yyyllmsg7#
我们的问题是 swarm worker 上的磁盘空间不足。通过在swarmworker节点上的
/var/lib/docker
释放一些空间并重新部署来解决。ljo96ir58#
在Docker桌面Mac上,我从Docker和Docker合成中得到了各种“找不到图像”的错误,无法
docker-compose down
或docker system prune
或docker ps
或任何东西。我最后做的是:
这似乎让事情进展顺利。
(Note我仍然收到“来自守护程序的错误响应:平台未知不支持”,直到我运行修剪。老实说,我只是假设守护进程中留下的任何数据都是可疑的,需要带着偏见冲洗。)