3

我已经在 OSX 10.10.5 上安装了 Docker Toolbox v1.8.1b

这也安装了 VirtualBox v5.0.2

但是,当安装完成并且我运行 Docker 快速启动终端时,它会做它的事情,在 virtualbox 中创建一个新的虚拟机,但随后没有启动它,并以default is not running.

当我尝试使用运行机器时,docker-machine start default我收到消息exit status 1

当我去 VirtualBox 并尝试在那里启动机器时,我收到以下错误消息:

Failed to load VMMR0.r0 (VERR_VMM_SMAP_BUT_AC_CLEAR).


Result Code: 
NS_ERROR_FAILURE (0x80004005)
Component: 
ConsoleWrap
Interface: 
IConsole {872da645-4a9b-1727-bee2-5585105b9eed}

那么其他人得到这个还是我没有正确遵循说明?

4

3 回答 3

7

我有完全相同的问题。最近版本的 VirtualBox 中似乎存在一个错误,该错误已在最新的测试版本中修复。见https://www.virtualbox.org/ticket/14412

我从https://www.virtualbox.org/wiki/Testbuilds下载了最新的 VirtualBox 测试版本, 然后使用该安装程序中提供的卸载程序脚本在安装新版本之前删除错误版本。

再次运行 Docker QuickStart 终端可以运行默认 VM,但它缺少 ca.pem 文件:

docker is configured to use the default machine with IP 192.168.99.100
For help getting started, check out the docs at https://docs.docker.com

open /Users/justin/.docker/machine/machines/default/ca.pem: no such file or directory

VirtualBox 确认 VM 正在运行。

我可以创建一个新的 VM 并成功地将它与 docker 一起使用(在不同的终端窗口中):

Justins-MacBook:~ justin$ docker-machine create --driver virtualbox dev
Creating VirtualBox VM...
Creating SSH key...
Starting VirtualBox VM...
Starting VM...
To see how to connect Docker to this machine, run: docker-machine env dev
Justins-MacBook:~ justin$ eval "$(docker-machine env dev)"
Justins-MacBook:~ justin$ docker run hello-world
...

然后我删除了默认虚拟机:

Justins-MacBook:.docker justin$ docker-machine stop default
Justins-MacBook:.docker justin$ docker-machine rm default
Successfully removed default

运行 Docker QuickStart Terminal 创建了一个新的默认 VM,docker 现在可以愉快地使用它。

更新:这里有一个未解决的问题:https ://github.com/docker/toolbox/issues/119

于 2015-08-23T05:41:01.480 回答
6

只是想补充一点:如果您安装了 docker for mac,他们会故意从 version 开始删除 docker-machine 命令2.2.0

你可以在这里找到讨论:https ://github.com/docker/for-mac/issues/4208

因此,您需要使用@shivanikoko 提供的命令或使用 brew 单独安装 docker-machine:

brew install docker-machine
于 2020-02-17T11:40:04.283 回答
0

在安装 docker 或更新 docker 后在 Osx 上,我们必须再次重新安装 docker-machine 以使其在 CLI 中工作。运行下面的命令对我有帮助。

base=https://github.com/docker/machine/releases/download/v0.16.0 &&
curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/usr/local/bin/docker- 
machine &&
chmod +x /usr/local/bin/docker-machine
于 2020-02-06T08:13:08.690 回答