执行docker-machine create后VirtualBox虚拟机无法启动,重启报错求助
解决Docker Machine在macOS High Sierra下创建Host-Only适配器失败的问题
我之前在macOS High Sierra环境下折腾Docker Swarm时,也碰到过完全一样的报错,给你几个亲测有效的解决方案,按顺序尝试:
1. 检查并授权VirtualBox内核扩展
macOS High Sierra的安全机制会默认阻止第三方内核扩展,这是最常见的原因:
- 打开「系统偏好设置」→「安全性与隐私」→「通用」标签页
- 如果看到“系统软件来自开发者「Oracle America, Inc.」已被阻止”的提示,点击「允许」
- 允许后重启你的Mac,再尝试重启docker-machine:
docker-machine restart myvm1
2. 手动创建Host-Only适配器
有时候自动创建适配器会失败,手动提前创建可以规避这个问题:
- 打开VirtualBox,点击顶部菜单栏的「VirtualBox」→「偏好设置」→「网络」→「Host-Only Networks」
- 点击右下角的加号按钮,创建一个新的Host-Only网络(默认命名为vboxnet0)
- 先删除有问题的machine,再重新创建:
docker-machine rm myvm1 docker-machine create --driver virtualbox myvm1
3. 重置VirtualBox网络配置文件
如果配置文件损坏也会导致这个报错:
- 先关闭所有VirtualBox虚拟机,退出VirtualBox程序
- 执行以下命令清理旧的网络配置:
sudo rm -rf /Library/Application\ Support/VirtualBox/VirtualBox.xml sudo killall VBoxNetDHCP VBoxNetNAT - 重新打开VirtualBox,再尝试创建docker-machine
4. 升级VirtualBox版本
你当前使用的VirtualBox 5.2.6和macOS High Sierra的兼容性存在一些已知问题,建议升级到6.1.x系列(长期支持版):
- 卸载当前的VirtualBox,然后下载安装最新的6.1.x版本
- 安装完成后记得再次去「安全性与隐私」中授权内核扩展,重启Mac后再尝试操作
内容的提问来源于stack exchange,提问作者Treefish Zhang
相关产品推荐
相关产品推荐

