【问题标题】:Simultaneous Docker and VirtualBox同时使用 Docker 和 VirtualBox
【发布时间】:2017-02-24 13:34:10
【问题描述】:

有什么方法可以让 docker 与 virtualbox 或 vmware 工作站一起执行。据我了解,Windows 中的 docker 安装程序需要 Hyper-V,需要为 VirtualBoxWorkstation 禁用它。

【问题讨论】:

    标签: docker virtual-machine


    【解决方案1】:

    安装最新的 Docker for Windows 和 VirtualBox。当 DfW 询问是否启用 Hyper-V 取消它时,VirtualBox 无法使用它,但您可以使用 docker-machine 和 VirtualBox 驱动程序来运行 docker 容器。我在 VB 中启动 docker 机器时遇到了一些错误,所以这里是完整的指南。

    转到命令提示符并发出

    docker-machine create -d virtualbox --virtualbox-ui-type "gui" default

    您可以查看 boot2docker 引导,但 docker-machine 仍然看不到 IP。 5分钟后它将超时并出现错误 “创建机器时出错:创建机器时驱动程序出错:等待 SSH 可用的重试次数过多。最后一个错误:超过最大重试次数 (60)”。

    下一个命令是docker-machine stop default。 下载并启动 Process Explorer,我们将尝试查看给出错误的命令。 当 Process Explorer 打开时,在控制台中发出 docker-machine start default。快速搜索 docker-machine 进程并单击它生成的 ssh.exe 子进程。 然后右键单击它并选择属性并复制命令行文本(提示 HOME、SHIFT+END、CTRL+C)。

    我的看起来像:

    C:\WINDOWS\System32\OpenSSH\ssh.exe -F /dev/null -o PasswordAuthentication=no -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o LogLevel=quiet -o ConnectionAttempts=3 -o ConnectTimeout=10 -o ControlMaster=no -o ControlPath=none docker@127.0.0.1 -o IdentitiesOnly=yes -i C:\Users\zvelj\.docker\machine\machines\default\id_rsa -p 55011 "exit 0"

    "exit 0" 之前添加详细标志-v,这样我们就可以看到错误是什么。就我而言,它是“警告:未受保护的私钥文件!”。 要修复该问题,找到该私钥,右键单击,选择属性,在对话框中转到安全选项卡,高级按钮,将所有者更改为您,禁用继承(全部删除),为您的帐户添加具有完全控制权的新权限条目。

    现在发布docker-machine stop defaultdocker-machine start default。然后只需按照控制台中的说明进行操作即可。

    docker-machine regenerate-certs default @FOR /f "tokens=*" %i IN ('docker-machine env') DO @%i 要验证运行 docker-machine ls 并在 ACTIVE 列中查找 *。

    要将其更改回无头模式,您需要更改“C:\Users{{YOUR USERNAME}}.docker\machine\machines\default\config.json”中的行 "UIType": "guid","UIType": "headless",

    您必须使用 shell 变量 @FOR /f "tokens=*" %i IN ('docker-machine env') DO @%i 为新控制台启用 docker 命令。最好创建一个 bash 脚本,它会自动执行此操作并提供用于启动/停止容器的菜单选项

    【讨论】:

      【解决方案2】:

      我认为唯一的解决方案可能是使用 Docker Toolbox(它使用 Virtualbox)而不是 Docker for Windows ...

      https://github.com/docker/for-win/issues/6

      引自本期:

      我正在关闭这个问题。虽然我们了解请求的背景,但由于上述原因,我们目前没有为 Docker for Windows 提供其他虚拟化后端的具体计划。我们继续为非 Hyper-V 用户提供 Toolbox 和 docker-machine 更新。

      【讨论】:

      • 如果已经安装了普通的 docker 安装程序,docker 工具箱是否可以正常运行。我的意思是我们仍然可以有一个禁用 Hyper-V 的操作系统启动?
      猜你喜欢
      • 2017-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-05
      相关资源
      最近更新 更多