簡體   English   中英

docker-machine 無法在 macOS 上創建機器,VBoxManage 返回 E_ACCESSDENIED 錯誤

[英]docker-machine unable to create a machine on macOS, VBoxManage returning E_ACCESSDENIED error

我使用 HomeBrew 安裝了docker 、 docker docker-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來“啟用 kernel 擴展”
  • 使用docker-machine ls檢查過去是否有任何孤立機器,如此處建議那樣

無濟於事。 顯然,該問題是由較新版本的 VirtualBox 中對 Host-Only 網絡的 IP 限制引起的。 一些帖子建議手動編輯 VirtualBox 的networks.conf文件。 但是我在我的機器上找不到它,也不知道我應該在那里改變什么!

PS1。 在 Reddit 上問了一個后續問題。

多虧了 Reddit 上的這條評論,我才能夠解決這個問題:

  1. 使用docker-machine ls查找所有機器
  2. 使用docker-machine rm -y <machineName>刪除不需要的那些
  3. 使用VBoxManage list hostonlyifs查找所有“僅限主機的以太網適配器”
  4. 使用VBoxManage hostonlyif remove <networkName>刪除孤立的
  5. 使用sudo mkdiretc目錄中創建一個vbox文件夾
  6. vbox文件夾中創建文件networks.conf ,例如通過sudo touch
  7. 將下面的行放在那里
* 0.0.0.0/0 ::/0
  1. 使用docker-machine create -d virtualbox <machineName>創建一台新機器
  2. 運行命令eval $(docker-machine env <machineName>)配置您的 shell

PS1。 上述解決方案的一個主要缺點是,每次使用 docker docker-machine start <machineName>啟動 docker 機器時, Waiting for an IP...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM