我在运行 Catalina 的 Mac 上下载、安装并设置了在 VMware Fusion 下运行的 Ubuntu 19.10 服务器。我能够通过添加.host:/ /mnt/hgfs fuse.vmhgfs-fuse defaults,allow_other,uid=1000 0 0
到我的 /etc/fstab 将客户系统连接到我的主机(在 Stack Exchange 的帮助下)。
但是,当我运行 docker 容器时,我无法从容器内部访问 /mnt/hgfs 文件夹。
我也使用 将 Mac OS 上的 docker 连接到 ubuntu-server --driver generic
。这显示了相同的症状。(甚至更糟糕的是:-v 选项只显示一个空文件夹)。
我需要做什么才能从 VMware Fusion 下运行的 Docker 容器中访问我的 Mac 主机文件?
答案1
好的,搞定了!问题在于获取/dev/fuse
容器内的访问权限。
这个问题实际上几乎与https://stackoverflow.com/questions/48402218/fuse-inside-docker。
您需要做的就是授予设备访问权限/dev/fuse
,然后就可以挂载原始共享文件夹:
docker run --device /dev/fuse -v /mnt/hgfs:/mnt/hgfs <image>
仅供参考,这也适用于 Parallels 中的 Docker,不同之处在于 Parallels 共享文件夹是/media/psf
:
docker run --device /dev/fuse -v /media/psf:/media/psf <image>