在Mac OS 10.15.3上升级到最新版本的Docker之后。我再次得到Mounts拒绝错误。

这些是版本:

Docker desktop: 2.2.0.3(42716)
Engine: 19.03.5
Mac osx: Catalina(10.15.3)
Docker compose: 1.25.4

我尝试在docker-compose文件中挂载/var/data/test:/var/data/test。我在File Sharing菜单中选择了该文件夹,事实证明它是/private/var/data/test,无法再进行编辑。

如果我尝试运行docker-compose up,始终会出现Mounts denied错误。
ERROR: for c9430ce45017_xxx-SNAPSHOT  Cannot start service xxx: Mounts denied:
The path /var/data/test
is not shared from OS X and is not known to Docker.
You can configure shared paths from Docker -> Preferences... -> File Sharing.
See https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.

更新:
正如@tripleee所建议的那样,我将撰写文件编辑为/private/var/data/test:/var/data/test,它可以工作。但是它在Linux服务器上不起作用。

最佳答案

感谢@GordonDavisson分享您的两分钱。

即使我无法将/var/data/test通过docker桌面GUI放置,我最终还是从命令行设置了共享文件目录。

GUI中显示的共享文件夹列表也可以在~/Library/Group Containers/group.com.docker/settings.json中进行编辑。

如果用户已经修改了共享文件夹,则settings.json中将已经存在“filesharingDirectories”数组,您只需在json数组中添加路径即可。如果未修改,则settings.json中不存在该数组,但是除了默认路径之外,还可以将其与路径一起添加:

"filesharingDirectories" : [
    "/Users",
    "/Volumes",
    "/private",
    "/tmp",
    "/usr/local/share/dotnet/sdk/NuGetFallbackFolder"
  ]

最终,该应用需要重新启动,以便在VM中可见文件夹。

归功于此link

最后,在重新启动它后,我将/var/data/test放入settings.json中。

关于macos - Docker无法在Mac OS的/var下挂载任何文件夹,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60281263/

10-16 12:32
查看更多