win10系统下把玩折腾DockerToolBox以及更换国内镜像源(各种神坑)

    2020年,这年头如果出去面试和面试官不聊几句Docker,都不好意思说自己是搞开发的。之前玩儿Docker都是在Mac系统里,没碰到过什么大问题,不过Docker这种容器技术本身就对Unix内核的系统天生友好,毕竟人家身体里流淌着linux的纯血基因,但是Docker对于Windows系统就显得不那么平易近人了,对待win10用户就有点矫情了,除了要求必须是64位系统以外,还必须要求系统版本是专业版,而家庭版用户想要一亲芳泽,还得借助Docker tool box这样的工具,所以这里作为win10家庭版用户的我们就依托docker tool box 来感受一下docker的魅力。

    首先要明确一点docker toolbox需要当前系统开启了cpu虚化技术,Virtualization Technology(VT),中文译为虚拟化技术,英特尔(Intel)和AMD的大部分CPU均支持此技术,名称分别为VT-x、AMD-V。开机进bios设置,找到类似intel virtualization technology 这种字眼的虚拟化支持选项,设置为Enabled开启。

    不过好消息是,目前市面上大部分电脑都默认开启cpu虚化,所以如果你的电脑不是10年以前的老古董,那就大可不必担心,直接下载docker tool box安装包即可

    下载地址推荐阿里云镜像:http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/

    在docker toolbox版本选择上,推荐DockerToolbox-17.12.0-ce.exe这一款,18虽然比较新,但是稳定性和兼容性不如老版本,所以这里保守的选择17。

     下载后双击安装,第一步不需勾选

    第二步如果之前装过Git,那就不要勾选,没有装过git就勾选git

    第三步勾选前两个选项即可

    随后一路next进行安装,需要注意一点,安装目录不要出现中文路径。

    安装成功之后,桌面会生成一个docker的图标,这里有一个小坑,如果电脑里曾经安装过git,而安装路径又不在C:/Program Files/Git的话,就会报错,所以右键点击图标,修改路径为你电脑里真实git的安装路径

    另外一个docker tool box 被人诟病的地方在于,每一次启动docker的时候,都会实时检测boot镜像的版本,然后从docker.io下载镜像,本来没有什么问题,但是这个国外源的速度慢的令人发指,所以最好在首次进入docker的时候,最好手动将安装目录的镜像拷贝到 用户目录下/.docker/machine/cache下面

    最后,是修改一下docker的镜像源,拉取docker的镜像时,默认也是国外的源,更换为国内的源能够很大的提升docker的使用体验,这里推荐阿里云的容器镜像加速服务,放心是免费的

    在阿里云上获取一下加速器的地址,进入docker,登录default镜像

docker-machine ssh default

    输入命令,更换源

sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=你的阿里云镜像加速地址 |g" /var/lib/boot2docker/profile

exit

    重启镜像

docker-machine restart default

    输入docker info,发现源已经更新

docker info

    这里也有一个坑,就是如果重启电脑或者重启虚拟机,镜像源地址又会被复位,这是因为启动脚本有一个自动复位的功能,该脚本在docker的安装目录下start.sh

    解决方案就是将复位的代码屏蔽掉

if [ "${VM_STATUS}" != "Running" ]; then
"${DOCKER_MACHINE}" start "${VM}"
# yes | "${DOCKER_MACHINE}" regenerate-certs "${VM}"
fi

    大概在这个shell脚本的67行

    至此,更换镜像源后,就可以一劳永逸了,整个过程坑虽然不少,但是也锻炼了我们的动手能力,同时大家也可以参考视频演示: