我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

当然了,在mac系统下,也有类似的设置共享文件夹操作。但是非常简单,所以并没有独立成篇。win10下面的同样操作,却异常艰辛困难。这里就说的是,在win10下,为docker设置共享文件夹的故事。

苏南大叔:win10系统,docker设置共享文件夹? - docker-share-folder
win10系统,docker设置共享文件夹?(图15-1)

为啥设置共享文件夹,因为,我们要调试docker下的各种网站系统啊,需要把代码“共享”到本地,然后,对其进行编辑...

基本设置

苏南大叔:win10系统,docker设置共享文件夹? - docker-setting
win10系统,docker设置共享文件夹?(图15-2)

设置范围居然是盘符,而不是某个文件夹。很不爽,mac下面就是可以设置某个文件夹的。

苏南大叔:win10系统,docker设置共享文件夹? - share_folder_01
win10系统,docker设置共享文件夹?(图15-3)

下面的蓝色区域的命令行,仅仅是个demo,不明白是啥意思的话,就不要执行。仅仅是demo,给高级用户看的,小白不要复制过来,拿到powershell下面执行。你懂的!

设置防火墙

设置好共享盘符,点击apply按钮后,居然提示要设置防火墙,如下图所示:

苏南大叔:win10系统,docker设置共享文件夹? - share_folder_02
win10系统,docker设置共享文件夹?(图15-4)

我直接把防火墙都关闭了,结果还是失败。

苏南大叔:win10系统,docker设置共享文件夹? - share_folder_03
win10系统,docker设置共享文件夹?(图15-5)

注:关闭防火墙的办法及界面很多,大概都是到网络连接里面去找相关选项。大家看到的界面不一定和我的一样。不过万变不离其宗,大概都是这个原理。

设置防火墙的解决方案

在E文站点上瞅了那么小一会, https://docs.docker.com/docker-for-windows/#firewall-rules-for-shared-drives 。终于在一名国外大神的博客上面得到了比较明确的答案。那就是要重装“DockerNAT”的“网络和文件夹共享协议”。

苏南大叔:win10系统,docker设置共享文件夹? - docker_share_fix_01
win10系统,docker设置共享文件夹?(图15-6)

苏南大叔:win10系统,docker设置共享文件夹? - docker_share_fix_02
win10系统,docker设置共享文件夹?(图15-7)

苏南大叔:win10系统,docker设置共享文件夹? - docker_share_fix_04
win10系统,docker设置共享文件夹?(图15-8)

苏南大叔:win10系统,docker设置共享文件夹? - docker_share_fix_05
win10系统,docker设置共享文件夹?(图15-9)

苏南大叔:win10系统,docker设置共享文件夹? - docker_share_fix_06
win10系统,docker设置共享文件夹?(图15-10)

苏南大叔:win10系统,docker设置共享文件夹? - docker_share_fix_07
win10系统,docker设置共享文件夹?(图15-11)

苏南大叔:win10系统,docker设置共享文件夹? - docker_share_fix_08
win10系统,docker设置共享文件夹?(图15-12)

苏南大叔:win10系统,docker设置共享文件夹? - docker_share_fix_09
win10系统,docker设置共享文件夹?(图15-13)

苏南大叔:win10系统,docker设置共享文件夹? - docker_share_fix_10
win10系统,docker设置共享文件夹?(图15-14)

然后重复文章开端的docker共享文件夹的操作即可。设置成功!

开放端口号

我们重新回到防火墙设置这步,不关闭防火墙,而直接开放445端口也是可以的。具体的防火墙规则由你自己定义~

苏南大叔:win10系统,docker设置共享文件夹? - docker_firewall_01
win10系统,docker设置共享文件夹?(图15-15)

如果您还需要更详细的ip方面的设置,下面是docker的官方文字。仅供参考。

To share the drive, allow connections between the Windows host machine and the virtual machine in Windows Firewall or your third party firewall software. You do not need to open port 445 on any other network. By default, allow connections to 10.0.75.1 port 445 (the Windows host) from 10.0.75.2 (the virtual machine). If the firewall rules appear to be open, consider reinstalling the File and Print Sharing service on the virtual network adapter.

结论

请关注苏南大叔的docker系列文章,https://newsn.net/tag/docker/

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   docker