Docker:看起来在查找 vboxmanage.exe 的步骤中出了点问题

Docker: Looks something went wrong in step Looking for vboxmanage.exe

我刚刚在我的 windows 7 机器上安装了 Docker 工具箱。 安装 运行 Docker Quickstart 终端后显示以下消息:

看起来在寻找 vboxmanage.exen 的步骤中出了点问题...按任意键继续....

这里有人知道如何解决这个问题吗?

此致,

通过清理我的 .bashrc 文件解决了问题。 更具体地说,我删除了 cd ,这非常有意义。

我是 Windows 8.1 用户,我在安装 Docker 工具箱时遇到了同样的问题。

因为我安装了以前版本的 VirtualBox,所以我取消选中 Docker 工具箱安装程序中的 VirtualBox 安装选项。

安装后我 运行 Docker Quickstart terminal 遇到同样的问题 看起来步骤 'looking for vboxmanage.exe'.

查看文件D:\Docker Toolbox\start.sh,里面有一些代码片段:

STEP="Looking for vboxmanage.exe"
if [ ! -z "$VBOX_MSI_INSTALL_PATH" ]; then
  VBOXMANAGE="${VBOX_MSI_INSTALL_PATH}VBoxManage.exe"
else
  VBOXMANAGE="${VBOX_INSTALL_PATH}VBoxManage.exe"
fi

start.sh 使用 $VBOX_MSI_INSTALL_PATH${VBOX_INSTALL_PATH} 环境变量来定位 VBoxManage.exe。

我发现我的系统变量 VBOX_MSI_INSTALL_PATH

D:\VirtualBox

然后,我将其更改为

D:\VirtualBox\

效果很好!

或者您可能错过了 VBOX_MSI_INSTALL_PATH/VBOX_INSTALL_PATH 环境变量。

这是我在Whosebug上的第一个回答,希望对你有所帮助!终于原谅我糟糕的英语了):

Docker Tool Box 不是独立的应用程序。它还有许多其他工具,例如 Oracle Virtual Box、Git 和 docker 引擎本身。

./start.sh 正在寻找旧版本中可能遗漏的一些现有配置。我将 GIT 版本从 2.0.x 更新为 2.12.x & 它适用于我。

简单的解决方案:我想我可以直接双击它,但需要调出一个 windows 命令提示符,CD 到 C:\Program Files\Docker Toolbox ,然后键入

sh start.sh

由于 L10 上的相对 DOCKER_MACHINE 路径定义,似乎 start.sh 只有在您进入其目录时才会 运行。我通过如下修改 "Docker Quickstart Terminal" 快捷方式的目标来修复它:

C:\Tools\Git\git-bash.exe -c "cd /c/tools/docker; ./start.sh"

替换 GitBash 和 Docker 工具箱的路径以匹配您的安装。如果您的路径包含空格,请务必像往常一样将它们用引号引起来。例如:

"C:\Tools\Git Bash\git-bash.exe" -c "cd '/c/tools/docker toolbox'; ./start.sh"

就上下文而言,我在安装 Docker Toolbox 之前已经安装了 GitBash 和 VirtualBox,因此我在安装过程中取消了这些选项。我敢肯定,如果我使用默认选项,这个问题就不会发生。这可能就是为什么 GitHub 上的某些人建议卸载 VirtualBox 并重新安装 Docker Toolbox 的原因。不要那样做,这几乎肯定是不必要的。

对我来说,问题是 DOCKER_TOOLBOX_INSTALLPATH 仅针对在安装时用于升级 priviligies 的用户设置。当我 运行 Docker Quickstart 作为普通用户时, DOCKER_TOOLBOX_INSTALLPATH 变量为空,从而产生错误。 设置 DOCKER_TOOLBOX_INSTALLPATH 系统范围解决了这个问题。

同样的事情发生在我身上。目前我正在使用Windows首页

至少在我的例子中,环境变量 DOCKER_MACHINEDOCKER_TOOLBOX_INSTALL_PATH 是不是为系统创建的。

我只需要添加它们就可以了。

对我来说,它有助于以管理员权限启动 Docker 快速启动终端。

如果您没有管理员权限,此方法有效:

> Setx DOCKER_MACHINE "C:\Program Files\Docker Toolbox\docker-machine.exe"
> Setx DOCKER_TOOLBOX_INSTALL_PATH "C:\Program Files\Docker Toolbox\"
> Setx VBOX_MSI_INSTALL_PATH "C:\Program Files\Oracle\VirtualBox\"

最后的双反斜杠确保变量以一个反斜杠作为最后一个字符保存,在 C:\Program Files\Docker Toolbox\start.sh:

中需要
> echo %DOCKER_TOOLBOX_INSTALL_PATH%
C:\Program Files\Docker Toolbox\

运行 docker 作为管理员为我解决了这个问题。

我个人通过将以下 属性 添加到我的环境(Windows 环境变量)解决了这个问题:

DOCKER_TOOLBOX_INSTALL_PATH=C:\Program Files\Docker Toolbox\

正如 Docker Toolbox 安装的 start.sh 脚本所指出的那样。

你知道开源程序有多好吗? 您实际上可以自己调查问题,这可能会更精确。

  1. 请向上滚动快速启动终端并查看您收到的错误消息

  2. 用文本编辑器打开 C:\Program Files\Docker Toolbox\start.sh(安装 docker 工具箱的位置),例如崇高的文字 并查看代码

  3. 如果在"looking for vboxmange.exe"步,应该在STEP="Checking if machine $VM exists"之前,只有50行要读

  4. 截至 2018 年 11 月 27 日,此步骤中可能给出的唯一两个错误来自这些行,因此请调查并找出其中的错误:

它们是:

if [ ! -f "${DOCKER_MACHINE}" ]; then
      echo "Docker Machine is not installed. Please re-run the Toolbox Installer and try again."
      exit 1
fi

if [ ! -f "${VBOXMANAGE}" ]; then
      echo "VirtualBox is not installed. Please re-run the Toolbox Installer and try again."
      exit 1
fi

其中:

DOCKER_MACHINE="${DOCKER_TOOLBOX_INSTALL_PATH}\docker-machine.exe"

if [ ! -z "$VBOX_MSI_INSTALL_PATH" ]; then
  VBOXMANAGE="${VBOX_MSI_INSTALL_PATH}VBoxManage.exe"
else
  VBOXMANAGE="${VBOX_INSTALL_PATH}VBoxManage.exe"
fi

所以,检查你的环境变量并回显它。

在我的例子中,原因是 DOCKER_TOOLBOX_INSTALL_PATH 是一个管理员用户变量:

所以,运行快速启动终端作为管理员用户或将变量放在系统变量下就可以了

您可以通过选择修复 模式重新安装 VirtualBox 来解决此问题。 C:\Program Files\Docker Toolbox\installers\virtualbox -> virtualbox.exe enter image description here 完成该过程后,重新启动机器并微笑!

对于 Windows 7 位用户: 将环境变量中的VBOX_MSI_INSTALL_PATH系统变量的值"C:\Program Files\Oracle\VirtualBox\"更改为"C:\Progra~1\Oracle\VirtualBox\"。

如果您是 运行 docker 来自 admin cmd 然后尝试向上滚动,您将收到错误消息,然后您可以解决问题。

对我来说错误"Docker Machine is not installed. Please re-run the Toolbox Installer and try again." 但不幸的是重新安装并没有解决问题。

我遇到了同样的问题。 在您的工具箱安装文件夹中,您应该能够找到 安装程序文件夹 ,在那里您会找到一个用于 Oracle Virtual Box 的 setup.exe。双击它,安装它,您应该可以毫无问题地重新打开 Docker 快速入门。 希望这可以帮助! 干杯! :D

我在 Win 10 Home 上也遇到了这个问题,我可能尝试了这个主题中的所有解决方案,但没有任何效果,唯一对我有用的是在 start.sh 中对 VBOX 的路径进行硬编码。 所以在start.sh这部分:

STEP="Looking for vboxmanage.exe"
if [ ! -z "$VBOX_MSI_INSTALL_PATH" ]; then
  VBOXMANAGE="${VBOX_MSI_INSTALL_PATH}VBoxManage.exe"
else
  VBOXMANAGE="${VBOX_INSTALL_PATH}VBoxManage.exe"
fi

我这样做了:

STEP="Looking for vboxmanage.exe"
if [ ! -z "$VBOX_MSI_INSTALL_PATH" ]; then
  VBOXMANAGE="C:\Program Files\Oracle\VirtualBox\VBoxManage.exe"
else
  VBOXMANAGE="${VBOX_INSTALL_PATH}VBoxManage.exe"
fi

这很管用。 我知道这个解决方案(硬编码路径)不是最好的,但它只是对我有用的一个,我认为有时候使用有效的坏解决方案比使用无效的好解决方案更好

我在 运行 我的 docker 工具箱上的 vboxmanage.exe 遇到了同样的问题。

由于我的计算机上没有安装 virtualbox,因此我通过安装 virtualbox 设法解决了问题。

不妨试试看

当用户使用 VPN 连接到某种安全网络时会发生这种情况,TLS 机器证书被弄乱,在重新启动机器并重新生成 TLS 机器证书时,docker 工具箱被配置为使用默认机器IP 192.168.XX.XX

在 windows 8.1 中,我通过 将额外的 \ 添加到 DOCKER_TOOLBOX_INSTALL_PATH 环境变量来解决问题。

安装程序已为管理员创建用户变量 DOCKER_TOOLBOX_INSTALL_PATH=C:\Program Files\Docker Toolbox , 但应该是

DOCKER_TOOLBOX_INSTALL_PATH=C:\Program Files\Docker Toolbox\

对于使用 chocolatey 安装 docker 的用户,您需要使用 choco install virtualbox 与 docker 分开安装 VirtualBox,并将环境变量设置为

DOCKER_MACHINE == "C:\Program Files\Docker Toolbox\docker-machine.exe"
DOCKER_TOOLBOX_INSTALL_PATH == "C:\Program Files\Docker Toolbox\"
VBOX_MSI_INSTALL_PATH == "C:\Program Files\Oracle\VirtualBox\"

不要忘记在文件夹末尾添加 \

我在 Windows 7 机器上遇到了同样的问题,下面的步骤解决了同样的问题

  1. 进入C:\Program Files\Docker Toolbox\installers\virtualbox双击virtualbox.msi安装Oracle Virtual box。 (注意:它将安装并请求 3-4 个组件的权限,全部授予)

  2. 设置环境变量 DOCKER_MACHINE C:\Program Files\Docker Toolbox\docker-machine.exe DOCKER_TOOLBOX_INSTALL_PATH C:\Program Files\Docker 工具箱

  3. 重启机器

  4. 最后打开 Docker Quickstart Terminal 并给它几分钟(可能是 5-10)让它完成设置