参考:
Windows Docker 安装
DockerToolbox在Win7上的安装和设置
Docker在Windows上使用有两种方式,一是利用VirtualBox建立linux虚拟机,在linux虚拟机中安装docker服务端和客户端,二是利用Windows的Hyper-v虚拟化技术,直接在Windows上安装docker服务端和客户端。
第二种方式一般要基于win10的专业版,笔者这里只介绍非win10专业版的安装方式。
安装docker Toolbox
这里先给出阿里源的下载地址:docker toolbox
下好安装包之后,一路next到如图所示(我的安装包virtualBox是必须选项,虽然我已经安装过一次),Git如果安装过也可以不安装,kitematic是一个镜像可视化工具,也可以不勾选(感觉没luan用)。
启动Docker Quickstart Terminal
这里如果之前安装过Git,或者没有走默认路径的安装的话,会弹出没有打开方式,右键:属性->快捷方式,找到目标那一栏,把login -i前的路径替换成你的Git安装路径中bash.exe的路径即可,bash的相对路径一般为/Git/bin/bash.exe,接着就可以正常打开docker的快速启动终端了。
接着是第二个坑的地方,在第一次启动Docker Quickstart Terminal时,会进行Docker环境的初始化,会在VirtualBox中自动创建名字为【default】的linux虚拟机,再此过程中会用到boot2docker.iso镜像文件。默认情况下,启动程序会从GitHub上下载此文件的最新版,但由于文件相对较大且速度不给力,多数情况下会下载失败,造成Docker环境无法启动,如下图:
其实DockerToolbox安装文件自带了boot2docker.iso镜像文件,位于安装目录下(如C:\Program Files\Docker Toolbox) ,将此文件拷至C:\Users\Administrator.docker\machine\cache目录下,然后在网络断开的情况下重新启动,便可成功载入镜像。但这还没完,如果使用的是toolBox安装包自带的virtualBox,那么很可能又会报错:
C:\Users\napas.docker\machine\machines\default\default\Logs\VBoxHardening.log VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component MachineWrap, interface IMachine Looks like something went wrong in step ´Checking status on default´... Press any key to continue...
这是因为版本过低导致的,直接下载最新版本安装就行(这里不用先卸再装,新的安装过程会帮你做)。
在下好最新版本的virtualBox后,先不着急启动docker的终端,先打开virtualBox,把default的虚拟机删除然后进入:管理->主机网络管理,把两个only网络删除,这是因为如果你的主机上安装了VMware或是VPN之类的,可能产生网络冲突,可能报的错大概是:
docker: An error occurred trying to connect: Post http: //127.0.0.1:2375/v1.22/containers/create: dial tcp 127.0.0.1:2375: connectex: No connection could be made because the target machine actively refused it.
然后启动docker终端,等待,最终出现这个界面即表示docker完成了安装。
更改虚拟磁盘位置
虚拟机的默认存储位置是C:\Users\Administrator.docker\machine\machines ,后期docke镜像文件会不断增加,为了给系统盘减负,最好将磁盘移动到其他位置。
首先通过终端(docker、cmd)中执行【docker-machine stop default】命令(或者打开Vbox停止)停止default虚拟机,选择:管理->虚拟介质管理,选中要虚拟磁盘,点击上方的复制:
选择VMDK,在【要创建的新虚拟磁盘】选择副本的创建路径(默认还是在当前文件夹),然后为虚拟机添加新复制的虚拟磁盘,删除之前的dick
然后打开终端执行【docker-machine start default】命令启动default虚拟机。
镜像下载加速
docker默认的镜像仓库地址是https://hub.docker.com/,但国内的下载速度太过缓慢,最好使用国内镜像,比如阿里云。
首先需要注册阿里云账号,然后在https://cr.console.aliyun.com/页面的左侧可以看到【镜像加速器】选项:
在cmd或docker快速启动终端输入【docker-machine ssh default】,连接到虚拟机如图:
然后输入:
sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=加速地址 |g" /var/lib/boot2docker/profile
然后输入exit退出虚拟机,输入【docker-machine restart default】进行重启。
hello world
等重启完毕后,输入docker run hello-world,这个时候发现快的一匹。