预创建检查出错:“未找到 VBoxManage。请确保已安装 VirtualBox 并且 VBoxManage 位于路径中”

问题描述 投票:0回答:12

我在物理 Windows7 上的 VirtualBox 中运行 CentOS。现在在 centOS 中我有 Docker 并且我需要运行

docker-machine create --driver virtualbox host1

但我收到错误

Error with pre-create check: "VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path"

那么我需要在 CentOS 中再次安装 VirtualBox 吗?如果是,我该怎么做?

非常感谢

docker centos virtualbox docker-machine
12个回答
38
投票

是的,你完全正确。您需要首先安装 VirtualBox。

您可以通过运行 CentOS 的

 yum install virtualbox 


来完成此操作
 sudo apt-get install virtualbox 
适用于 Ubuntu

这样做,然后运行你的代码,你就可以开始了


17
投票

这是权限问题。您已将 docker 安装为 sudo。你需要奔跑

sudo docker-machine create --driver virtualbox host1

sudo docker-compose up 

解决这个问题。


6
投票

我在 Ubuntu 18.04 中遇到了同样的错误,但我意识到我已经使用命令安装了 docker-machine :

sudo snap install docker

但是使用 :

安装 docker-machine
$ curl -L https://github.com/docker/machine/releases/download/v0.13.0/docker-machine-`uname -s`-`uname -m` >/tmp/docker-machine && \
chmod +x /tmp/docker-machine && \
sudo cp /tmp/docker-machine /usr/local/bin/docker-machine

检查您的安装:

$ docker-machine version

然后使用以下命令安装 virtualbox:

$sudo apt install virtualbox

现在您可以使用以下命令创建 docker-machine :

$ docker-machine create --driver virtualbox dev

希望这有帮助。


4
投票

更具体地了解在 Mac Mojavi 上安装 VirtualBox。

  1. 下载VirtualBox-6.0.6-130049-OSX.dmg后,双击安装

  2. 转到您的应用程序文件夹,您将找到如下所示的 virtualbox.pkg:

  3. 点击它即可完成安装。

  4. 安装完成后,您应该在应用程序文件夹中看到 VirtualBox,如下所示:

  5. 之后您应该刷新终端并重新运行命令。

    docker-machine create --driver virtualbox local-docker.
    

2
投票

尝试使用超级用户执行:

sudo docker-machine create -d virtualbox myvm1

2
投票

对于使用 Windows 的用户,您可以以管理员身份打开 powershell 命令 shell 并运行以下命令:

PS C:\Windows/system32>

choco install  virtualbox

如果您没有 choco,您可以使用以下命令安装它:

PS C:\Windows/system32>

Set-ExecutionPolicy Bypass -Scope Process -Force; `
      iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

1
投票

你只需要安装 virtualbox :

sudo apt-get install virtualbox

then run this command:

docker-machine create --driver virtualbox default

1
投票
  1. 重新安装virtualbox

sudo snap 删除 virtualbox && sudo snap 安装 virtualbox

  1. 重命名 VBoxManage 以匹配大小写

sudo ln -s /usr/local/bin/VBoxManage /usr/local/bin/vboxmanage

  1. 使用以下命令重新安装 Docker Machine。
base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine &&
  sudo mv /tmp/docker-machine /usr/local/bin/docker-machine &&
  chmod +x /usr/local/bin/docker-machine
  1. 确认版本并将脚本保存到/etc/bash_completion.d或/usr/local/etc/bash_completion.d
base=https://raw.githubusercontent.com/docker/machine/v0.16.0
for i in docker-machine-prompt.bash docker-machine-wrapper.bashdocker-machine.bash
do
  sudo wget "$base/contrib/completion/bash/${i}" -P /etc/bash_completion.d
done
  1. 重新运行命令。

docker-machine create --driver virtualbox host1


0
投票

1)重新安装 Virtualbox ...您可以使用以下代码: sudo apt-get install virtualbox

2) sudo docker-machine create --driver virtualbox 默认


0
投票

使用以下步骤安装 Docker-Swarm:

$ base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  mkdir -p "$HOME/bin" &&
  curl -L $base/docker-machine-Windows-x86_64.exe > "$HOME/bin/docker-machine.exe" &&
  chmod +x "$HOME/bin/docker-machine.exe"

出现错误的步骤:

$ base=https://github.com/docker/machine/releases/download/v0.16.0
$ mkdir -p "$HOME/bin"
$ curl -L $base/docker-machine-Windows-x86_64.exe > "$HOME/bin/docker-machine.exe"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   623  100   623    0     0   1236      0 --:--:-- --:--:-- --:--:--  1238
100 27.2M  100 27.2M    0     0   726k      0  0:00:38  0:00:38 --:--:--  593k

$ chmod +x "$HOME/bin/docker-machine.exe"
$ docker-machine version
docker-machine.exe version 0.16.0, build 702c****
$ docker-machine ls
NAME   ACTIVE   DRIVER   STATE   URL   SWARM   DOCKER   ERRORS

$ docker-machine create --driver virtualbox manager1
Creating CA: C:\Users\*****\.docker\machine\certs\ca.pem
Creating client certificate: C:\Users\*****\.docker\machine\certs\cert.pem
Running pre-create checks...
Error with pre-create check: "VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path"

分辨率:

然后我从下面的链接安装了VM:安装VirtualBox 下载 VirtualBox 和相应的扩展包:https://www.virtualbox.org/wiki/Downloads 使用默认设置安装 VirtualBox 将扩展包添加到 VirtualBox(文件 -> 首选项 -> 扩展)

$ docker-machine create --driver virtualbox manager1
Running pre-create checks...
Error with pre-create check: "This computer is running Hyper-V. VirtualBox won't boot a 64bits VM when Hyper-V is activated. 
Either use Hyper-V as a driver, or disable the Hyper-V hypervisor. (To skip this check, use --virtualbox-no-vtx-check)"

最后使用以下命令创建它:

$ docker-machine create --driver virtualbox  --virtualbox-no-vtx-check manager1
Running pre-create checks...
(manager1) Image cache directory does not exist, creating it at C:\Users\****\.docker\machine\cache...
(manager1) No default Boot2Docker ISO found locally, downloading the latest release...
(manager1) 0%....10%....20%....30%....40%....50%....60%....70%....80%....90%....100%

(manager1) Creating VirtualBox VM...
(manager1) Creating SSH key...
(manager1) Starting the VM...

0
投票

此外,如果您在虚拟机上安装了 virtualbox 和 vboxmanage 但仍然遇到相同的错误:

确保您的用户位于 docker 组中。否则,您以 root 身份运行 docker,以用户身份运行 vbox,它们将无法看到对方。表明您不在该组中的明显标志是您必须 sudo docker 命令,例如:

sudo docker images

要修复,请执行以下操作:

sudo groupadd docker
sudo gpasswd -a <your-username> docker

现在检查用户是否已添加:

getent group docker

或:

grep /etc/group -e "docker"

同时重新启动 docker 守护进程:

sudo service docker restart 

注销并返回终端(如果这不起作用,请尝试重新启动系统),并且您应该能够在没有 sudo 的情况下运行 docker,例如:

docker images

docker 机器和 docker-compose 现在也应该运行。

更多信息,请参考这个答案:Can't connect to docker from docker-compose


0
投票

运行以下命令:

  1. sudo apt-get install virtualbox
    安装virtual box,然后。
  2. docker-machine create --driver virtualbox default
    创建机器并为其创建链接
© www.soinside.com 2019 - 2024. All rights reserved.