10.1 打开命令行后,看到下载啥 boot2docker.iso,然后总是超时失败,怎么办?

装了 Docker Toolbox 的 Windows 用户,或者第一次使用 docker-machine 创建本地 VirtualBox 虚拟机的用户,经常会看到这样的报错:

(default) Latest release for github.com/boot2docker/boot2docker is v17.06.2-ce

(default) Downloading /Users/jessie/.docker/machine/cache/boot2docker.iso from https://github.com/boot2docker/boot2docker/releases/download/v17.06.2-ce/boot2docker.iso...

然后经过漫长的等待后,说超时、或者下载失败,最后创建虚拟机失败。

这首先还是先去感谢伟大的墙及其亲属,没有他们的作祟,这个错误基本出现不了。

众所周知,我们通常所说的 Docker 是基于 Linux 内核的。因此在 Windows 环境中,Docker Toolbox 会使用 Docker Machine 建立一个名为 default 的 VirtualBox Linux 虚拟机,来进行 Docker 操作。由于只需要运行 Docker,因此这个 Linux 可以非常精简,不需要任何复杂的系统功能。由于历史原因,这个微缩版的 Linux 系统是被称为 boot2docker 的系统。

而 Docker Machine 在建立虚拟机的时候,会从网上检查 Docker 最新的版本是什么,如果发现本地缓存中的 ISO 不存在,或者不是最新版本,那就会去从官网下载最新版本的 ISO 文件。而这个文件,就是提示中所说的 boot2docker.iso 文件。由于伟大的墙经常做出刷出镜率的行为,从 GitHub 上下载东西经常会被干扰和阻断。这就是为啥经常出现超时、或者无法访问的问题。

解决办法很简单,直接下不行,那就手工FQ下……

05-27 13:18