这是一个2018年的新年礼物!
1、下载Docker Toolbox for Windows,安装VirtualBox
https://docs.docker.com/toolbox/overview/
推荐用迅雷下载,或者其他下载软件下载,用IE下载会让人抓狂的…一开始我下载了Docker for Windows,安装的时候才发现我的系统是Windows10 home版本不能装!需要Win10 Pro版才能装,那么大概以下的Win7/8这些都是不能装的,所以大家一般都跟我装的一样就行了,下载Docker Toolbox for Windows。
安装比较简单,基本按照这样点:
装完后就有:
这里就有一个大坑天坑啊,从docker官 上下载下来自带安装的VirtualBox是5.2版本,我用了以后所有装好的虚拟机点“设置”或者 络之类的选项,就直接VirtualBox无响应了,虽然虚拟机是起来的(可以在命令行界面操作,但是不能配置 络就没办法后面配置转发,那么在主机Win10环境下就不能访问linux虚拟机里面跑的docker container起的Jupyter…这样编程就很不方便了..)作为有一点点强迫症的我是很不能接受的。所以呢,我就又单独删掉了上面安装的VirtualBox,下载了最新版本的VirtualBox 5.2.4,地址:
http://download.virtualbox.org/virtualbox/5.2.4/VirtualBox-5.2.4-119785-Win.exe
然后呢,就可以往下走啦…还有好几个坑
2、安装、启动虚拟机
因为我们安装的是Docker Toolbox,所以本质上Docker并不是安装在Windows上的,而是安装在虚拟机上的,所以需要先装一个虚拟机。而这个虚拟机安装很方便,不需要单独去准备Linux的镜像,因为Docker版本有对应的boot2docker镜像。
点击Docker Quickstart Terminal图标后,一般会出现下图(图片借用[1],这一段我忘记截图了),提示要么就是Boot2docker iso找不到,或者是out-of-date;它去找的路径一般是C:UsersXXXXXX.dockermachinecache,其中XXXXXX是你的电脑用户名,
它自己也会下载,但是极慢,所以关掉Docker Quickstart Terminal,根据前面屏幕提示自行用下载软件去https://github.com/boot2docker/boot2docker/releases/download/v17.12.0-ce/boot2docker.iso
下载最新版本(可以根据上面屏幕的提示下载,我这个地址可能过几天也会旧的),并放到路径下:
重新启动Docker Quickstart Terminal,下面这样就正常了:
然后你就可以看见起了一个叫default的虚拟机,IP地址是192.168.99.100(我这里是,可能你的不一定完全一样,没关系。可以在win下面ping通的)
OK,到这里docker就安装好了,大家可以用docker啦,后面就开始使用TensorFlow了。docker下用TensorFlow是一样的,所以有经验的同学应该很快就搞定。
简单科普一下Docker的使用命令,这里就先不展开啦http://www.docker.org.cn/dockerppt/106.html
3、安装TensorFlow
根据你需要下载的镜像,先在docker hub上搜索一下,比如我要搜索TensorFlow,只要输入
然后pull第一个官方的镜像到本地
这里直接这样做没问题,但是速度极慢,主要是镜像都在国外,所以推荐使用docker加速器,下面这个是免费的,速度很快,很赞!https://www.daocloud.io/mirror#accelerator-doc
点进去,注册id以后就可以看到镜像加速地址了,记下地址,然后在终端中依次打入下面四条命令(替换其中的加速地址),想要拷贝命令见文末的小贴士。
这样前面的pull就飞快啦!如果你只是想用TensorFlow,或者只是测试一下前面的是不是都装好了,那么只要
然后运行python,再看看TensorFlow简单的命令是不是OK[4]
到这里其实Python和TensorFlow已经可以用了,如果你对Linux比较熟,就可以自己安装vi这些然后开始用咯。不过这样毕竟比较复杂,所以呢我就想用Jupyter Notebook来学习TensorFlow和Python,这个环境对在windows上使用还是比较友好的。
3、安装Jupyter Notebook
这一块是较为让我头疼的,在上面花了几天时间研究(主要是之前用virtualbox版本不好,一点设置就卡死…)。
如果你是直接在Linux主机上安装docker的,就像一般的用法,
TensorFlow的镜像中在/目录下就有一个启动Jupyter服务的脚本,启动这个脚本
根据提示,只要在主机的浏览器中输入http://localhost:8888
或者用可以联 的其他机器访问http://主机IP:8888,就可以访问Jupyter了,但是呢我们是在Win10上运行了虚拟机,再在虚拟机上运行了dokcer,这样就找不到Jupyter服务了。
我们需要做的是首先stop虚拟机default:
然后去VitualBox软件中设置 络
安装好后的效果是(有两个虚拟的 络适配器,都操作一下好了):
然后我再点“设置”就正常了,根据下图进行一个端口转发配置:ssh那一行是本来就有的。基本意思是说转发虚拟机的8888端口到主机host的8888端口。
然后启动defaut虚拟机:
当然启动之前你也可以看一下状态
查看之前已经退出了docker容器,有必要的你可以删除一些不要的了容器
然后启动已经Exited的容器:
到这里基本上就差不多了,只要不把你起的name叫做xx的容器 rm掉,那么以后关机再起来之前存的一些文件就依然还在,这些文件是存放在虚拟机的虚拟存储中的,实际上也是占了一块host主机的存储,只是是放在虚拟存储文件中的。
6、挂载Windows磁盘
因为我们用的虚拟机,所以呢实际上我们是(1)挂载Windows的磁盘到虚拟机上,(2)然后再从虚拟机上挂载到docker容器中。
(1)挂载Windows的磁盘到虚拟机上:
我发现实际上装好虚拟机以后,系统默认是会将C:Users挂载到虚拟机上的/c/Users,这个可以从VirtualBox的设置–共享文件夹看到的默认有的(要看的话先要docker-machine stop default):
因此我在Windows下C:Users里面建立了一个文件夹data,然后在虚拟机下是可以看见的
其他的地址如果需要的话你在共享文件夹里面照着设置一下,据说windows暂时只支持c盘的映射,未试过,因为我的本本只有一个c盘T_T,所以我也就不设置了,直接用C:Users就好了。
好了,这样就很完美啦(懒得再zuo了),大家有需要在自己的本本上玩玩TensorFlow和Python但是又不想装一大堆软件的,就试试用docker吧~~简直Perfect!
小贴士
- 如果不想用docker toolbox自带的命令行工具,想用类似Xshell这些工具访问虚拟机的,可以参考[6]。其中ssh 账 /密码
——docker / tcuser
参考资料
[1] http://blog.csdn.net/qq2712193/article/details/54576313
[2] http://www.docker.org.cn/dockerppt/106.html
[3] http://guide.daocloud.io/dcs/daocloud-9153151.html#docker-toolbox
[4] http://blog.csdn.net/seymour163/article/details/53236947
[5] http://blog.csdn.net/lh11077/article/details/51979663
[6] http://blog.csdn.net/tina_ttl/article/details/51372604#7docker中的jupyter
[7] https://segmentfault.com/q/1010000004583683
[8] https://segmentfault.com/q/1010000001707518
文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树首页概览211264 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!