Docker-MACHINE无法在MacOS上创建计算机,VBoxManage返回E_ACCESSDENIED错误 [英] docker-machine unable to create a machine on macOS, VBoxManage returning E_ACCESSDENIED error

查看:19
本文介绍了Docker-MACHINE无法在MacOS上创建计算机,VBoxManage返回E_ACCESSDENIED错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用自制软件安装了dockerdocker-machinevirtualbox

Docker version 20.10.11, build dea9396e18
docker-machine version 0.16.2, build bd45ab1
VBoxManage version 6.1.30r148432

当我尝试创建新计算机时

docker-machine create -d virtualbox default

我收到以下错误:

Running pre-create checks...
Creating machine...
(default) Copying /Users/foobar/.docker/machine/cache/boot2docker.iso to /Users/foobar/.docker/machine/machines/default/boot2docker.iso...
(default) Creating VirtualBox VM...
(default) Creating SSH key...
(default) Starting the VM...
(default) Check network to re-create if needed...
(default) Found a new host-only adapter: "vboxnet0"
Error creating machine: Error in driver during machine creation: Error setting up host only network on machine start: /usr/local/bin/VBoxManage hostonlyif ipconfig vboxnet0 --ip 192.168.99.1 --netmask 255.255.255.0 failed:
VBoxManage: error: Code E_ACCESSDENIED (0x80070005) - Access denied (extended info not available)
VBoxManage: error: Context: "EnableStaticIPConfig(Bstr(pszIp).raw(), Bstr(pszNetmask).raw())" at line 242 of file VBoxManageHostonly.cpp

我尝试了很多方法

  • 重新安装我的所有软件包
  • sudo中运行上述命令
  • 按照说明使用kextload启用内核扩展here
  • 使用docker-machine ls检查是否有以前建议的孤立计算机here

没有用。显然,这个问题是由较新版本的VirtualBox中对仅主机网络的IP限制引起的。Some posts建议手动编辑VirtualBox的networks.conf文件。但是我在我的机器上找不到它,我也不知道我应该在那里更改什么!

P.S.1.提出了后续问题here on Reddit

推荐答案

多亏了Reddit上的this comment,我才能解决这个问题:

  1. 使用docker-machine ls
  2. 查找所有计算机
  3. 使用docker-machine rm -y <machineName>
  4. 删除不需要的文件
  5. 使用VBoxManage list hostonlyifs查找所有仅主机以太网适配器(&Q;)
  6. 使用VBoxManage hostonlyif remove <networkName>
  7. 删除孤立项
  8. 使用sudo mkdiretc目录下创建vbox文件夹
  9. vbox文件夹中创建文件,例如通过sudo touch
  10. 将下面一行放在那里
* 0.0.0.0/0 ::/0
  1. 使用docker-machine create -d virtualbox <machineName>
  2. 创建新计算机
  3. 运行命令eval $(docker-machine env <machineName>)以配置您的外壳

P.S.1.上述解决方案的一个主要缺点是,每次使用docker-machine start <machineName>启动扩展坞机器时,都会花费大量时间Waiting for an IP...

这篇关于Docker-MACHINE无法在MacOS上创建计算机,VBoxManage返回E_ACCESSDENIED错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆