Docker基础镜像在Mac OS X上运行缓慢

3

我在OS X上使用boot2docker安装了docker。一切都正常,但是当我运行docker run -i -t base /bin/bash时,它虽然可以工作,但是非常慢。我的意思是,如果我输入一个字符,需要30秒至1分钟才能在屏幕上显示出来。我检查了我的Activity Monitor,确保系统没有低内存,但并非如此。在这个过程运行时,它显示空闲内存约为85%。我很想知道是否有其他的OS X用户也遇到了类似的问题。感谢任何帮助!


你正在运行哪个版本的Docker?请记住,他们刚刚开始支持OSX,因此可能会有一些小问题。 - Reza S
在发生这种情况时,您是否看到了很多磁盘活动?如果您运行例如docker run ubuntu echo hello,需要多长时间才能获得响应? - jpetazzo
@RezaSanaie 我正在使用版本0.8.1。@jpetazzo 是的,每当我开始在提示符处输入并运行docker run ubuntu echo hello时,我的磁盘活动(IO)会飙升,这需要不到2秒钟的时间。 - jfizz
这里有同样的问题,这是一个已知问题:https://github.com/boot2docker/boot2docker/issues/148 - Julian Maicher
1个回答

1
我曾经遇到过同样的问题,正如Julian已经提到的那样,这是一个已知的问题。但是,在该问题主题中的一篇帖子中有一个对我有用的解决方法(至少是它的改进版本)。
./boot2docker stop           # stop a currently running deamon-instance
./boot2docker delete         # remove the vm
rm -rf boot2docker.iso       # in my case I had a (very old) iso-image

在这个阶段,任何重新初始化boot2docker-vm的尝试都失败了。所以我被迫重新安装boot2docker本身(结果发现我使用的是非常旧的版本)。您可以通过Homebrew或新的安装程序来执行此操作(而docker-docu中演示的解决方案已不再适用)。无论如何,请不要忘记按照文档中所述正确设置DOCKER_HOST变量。
export DOCKER_HOST=tcp://127.0.0.1:4243

重新安装boot2docker后,以下命令应该可以正常工作:

./boot2docker init           # fetches a brand new vm image and initializes
./boot2docker up             # now we're back in business

这对我来说就可以了 - 现在性能符合预期

 docker run -i -t --rm dockerfile/ubuntu /bin/bash

给我一个(几乎)即时的bash提示符。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接