win10下docker挂载文件夹报错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了win10下docker挂载文件夹报错相关的知识,希望对你有一定的参考价值。

参考技术A 执行命令 

docker run -d -v D:\wnmp\mysql57-log:/var/log/mysql/ -v D:\wnmp\mysql57-conf:/etc/mysql/ -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root --name mysql mysql:5.6

报错

docker: Error response from daemon: status code not OK but 500: � ����� � FDocker.Core, Version=2.5.0.49550, Culture=neutral, PublicKeyToken=null�� ocker.Core.DockerException ClassNameMessage�Data�InnerExceptionHelpWatsonBuckets������� � ��System.Collections.IDictionary�System.Excepti�� �� ocker.Core.DockerException�� �Filesharing has been cancelled

��  ��  在 Docker.ApiServices.Mounting.FileSharing.<DoShareAsync>d__8.MoveNext() 位置 C:\workspaces\stable-2.5.x\src\github.com\docker\pinata\win\src\Docker.ApiServices\Mounting\FileSharing.cs:行号 0

--- 引发异常的上一位置中堆栈跟踪的末尾 ---

  在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

  在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

  在 Docker.ApiServices.Mounting.FileSharing.<ShareAsync>d__6.MoveNext() 位置 C:\workspaces\stable-2.5.x\src\github.com\docker\pinata\win\src\Docker.ApiServices\Mounting\FileSharing.cs:行号 55

--- 引发异常的上一位置中堆栈跟踪的末尾 ---

  在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

  在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

  在 Docker.HttpApi.Controllers.FilesharingController.<ShareDirectory>d__2.MoveNext() 位置 C:\workspaces\stable-2.5.x\src\github.com\docker\pinata\win\src\Docker.HttpApi\Controllers\FilesharingController.cs:行号 21

--- 引发异常的上一位置中堆栈跟踪的末尾 ---

  在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

  在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

  在 System.Threading.Tasks.TaskHelpersExtensions.<CastToObject>d__1`1.MoveNext()

--- 引发异常的上一位置中堆栈跟踪的末尾 ---

  在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

  在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

  在 System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__1.MoveNext()

--- 引发异常的上一位置中堆栈跟踪的末尾 ---

  在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

  在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

  在 System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__5.MoveNext()

--- 引发异常的上一位置中堆栈跟踪的末尾 ---

  在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

  在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

  在 System.Web.Http.Dispatcher.HttpControllerDispatcher.<SendAsync>d__15.MoveNext()

    ��  ��8

MoveNext

Docker.ApiServices, Version=2.5.0.49550, Culture=neutral, PublicKeyToken=null

Docker.ApiServices.Mounting.FileSharing+<DoShareAsync>d__8

Void MoveNext() ����  �Docker.ApiServices.

See 'docker run --help'.

打开设置,添加挂载目录

点击保存

win10通过Docker Toolbox安装docker及配置文件共享挂载本地磁盘目录

1、下载软件
软件下载地址: http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/
选择合适的版本,本次实验以下图为例:
技术图片
下载完成
双击运行程序
技术图片
技术图片
技术图片
技术图片
技术图片
安装完成桌面会出现以下三个图标:
技术图片
双击“Docker Quickstart Terminal”弹出页面会显示正在下载boot2docker.iso镜像文件
由于资源在github上,下载会非常非常慢,这里已经下载下来通过云盘共享一下(永久有效):

链接:https://pan.baidu.com/s/13-oiDewOhxg63jkNepIXhA
提取码:d8u1
复制这段内容后打开百度网盘手机App,操作更方便哦

下载完成后将此文件挪到下载页面提示的地方:
技术图片
再次双击“Docker Quickstart Terminal”页面就会弹出docker的小鲸鱼图标了
软件安装完成。此时已经可以下载镜像生成容器了
踩过的坑:

docker-machine Host does not exist: "default" 并且执行docker-machine env default也会报错
原因:就是没有boot2docker.iso文件
解决:下载并将iso文件移动到正确的位置

技术图片

2、配置共享文件挂载本地磁盘目录
双击“Oracle VM VirtualBox”程序
技术图片
技术图片
第一行填写自己想共享到容器里的本机目录路径,第二个文件夹名称会自动生产,也可自定义
填写完成后重启当前服务器,重启需要一点时间:
技术图片
重启完成后双击“Docker Quickstart Terminal”进入linux命令行页面
技术图片
配置完成退出default服务器,回到linux命令行界面
技术图片
踩过的坑:

问题:第一次挂载本地目录的时候直接挂载到了default的/mnt目录下,退出时导致default容器故障,退出状态505(具体报错内容不记得了),docker-machine ssh default也连接不进去,docker run也生成不了容器
解决:在共享文件夹目录设置那将自己添加的目录先删掉,然后重启default服务器

以上是关于win10下docker挂载文件夹报错的主要内容,如果未能解决你的问题,请参考以下文章

win10通过Docker Toolbox安装docker及配置文件共享挂载本地磁盘目录

docker desktop win10挂载问题解决

按照官方文档 在win10下安装 docker for windows easyswoole镜像 挂载目录

Docker 安装报错:没有找到installationmanifest.json文件

如何在win7系统下硬盘中挂载虚拟硬盘?要求答案详细~

【Windows Docker】docker挂载解决IO速度慢的问题