Docker Toolbox在window 10 home 下挂载宿主机目录到容器的正确操作

由于我是window 10 home 而不是 pro版本,只能使用Docker Toolbox,其实docker for window对windows的支持更好,还有GUI,home版本安装Docker也是极为艰辛。好在我安装好了,但是日常使用也是比pro版的Docker有更多的坑,在此把我踩过的坑,记录下来,惠泽他人。

这个坑是Docker Toolbox在window 10 home 下挂载宿主机目录到容器,愿以为是要在Docker为win10 pro提供GUI里设置与c盘共享,Google了很多方法,还是在docker社区里一位老哥一针见血的指出了这其实是语法错误,附上图和链接。

出处:Can't set Docker Volume for Container in Windows Docker CE - Docker for Windows - Docker Forums

 

Docker容器启动的时候,如果要挂载宿主机的一个目录,可以用-v参数指定。

譬如我要启动一个centos容器,宿主机的C:/Users/T480S/work/Engine目录挂载到容器的/Engine目录,可通过以下方式指定:

docker run -it -v C:/Users/T480S/work/Engine:/Engine -p 8000:8000 steveny/predictionio:0.12.0 /bin/bash

这样在容器启动后,容器内会自动创建/Engine的目录。通过这种方式,我们可以明确一点,即-v参数中,冒号”:”前面的目录是宿主机目录,后面的目录是容器内目录。

注意:容器目录不可以为相对路径,斜线为反斜线 ‘/’

但是依然还是报错了

报错:Error response from daemon: invalid mode: /Engine

 

愿以为是要在Docker为win10 pro提供GUI里设置与c盘共享,Google了很多方法,还是在docker社区里一位老哥一针见血的指出了这其实是语法错误,参考上图。

这是参考别人指出的错误之后修改的代码

docker run -it -v /c/Users/T480S/work/Engine:/Engine -p 8000:8000 steveny/predictionio:0.12.0 /bin/bash

无报错,正确输出

 

posted @ 2018-08-09 10:21  知-青  阅读(6296)  评论(1编辑  收藏  举报