docker-machine创建VM报错:启动时仅主机网络设置失败如何解决
docker-machine创建VM报Host-Only网络配置错误解决方法
报错信息
使用docker-machine创建虚拟机过程中触发如下报错,已尝试公开渠道可检索的所有通用方案均未解决:
Error creating machine: Error in driver during machine creation: Error setting up host only network on machine start
解决步骤
这个报错本质是docker-machine依赖的虚拟化驱动(绝大多数场景是VirtualBox)的主机仅主机模式网络配置异常,按以下顺序操作即可覆盖99%的故障场景:
- 清理残留虚拟网卡
打开VirtualBox管理器,进入「管理 > 主机网络管理器」,删除所有名称为vboxnet*的现有虚拟网卡;手动新建名为vboxnet0的网卡,配置IPv4地址为192.168.99.1/24,开启DHCP服务,分配DHCP地址段为192.168.99.100-192.168.99.254,保存配置后完全退出VirtualBox。 - 修复运行权限
Windows系统启动终端时必须选择「以管理员身份运行」;macOS/Linux系统执行docker-machine命令前加sudo提权,同时确认安全软件没有拦截VirtualBox、docker-machine的网络操作权限。 - 清理失败实例缓存
执行以下命令删除所有创建失败的残留实例:
手动进入docker-machine rm -f $(docker-machine ls -q)~/.docker/machine/machines/目录,删除所有和失败实例同名的残留文件夹。 - 显式指定网络参数重新创建
创建虚拟机时不要使用默认自动配置参数,显式指定Host-Only网段规避自动配置逻辑bug:docker-machine create --driver virtualbox --virtualbox-hostonly-cidr "192.168.99.1/24" default
特殊场景排查
如果上述步骤执行后仍报错,逐一核对以下配置:
- 版本兼容性问题:不要使用VirtualBox 7.x测试版本,降级到6.1.x稳定版即可解决大部分版本适配问题
- 网络冲突问题:临时关闭系统上运行的VPN、第三方防火墙、全局代理类软件,这类软件会篡改虚拟网卡路由表导致配置失败
- 虚拟化冲突问题:Windows系统如果开启了Hyper-V、WSL2功能,必须先彻底关闭相关功能并重启系统,否则会和VirtualBox的虚拟化能力冲突
内容的提问来源于stack exchange,提问作者unknown
相关产品推荐
相关产品推荐

