Docker add network drive as volume on windows

自闭症网瘾萝莉.ら 提交于 2019-12-09 10:04:47

问题


I am trying to mount a network drive as a volume. This is the command I am trying

docker run -v //NetworkDirectory/Folder:/data alpine ls /data

I am running this command on windows and the data directory is coming up empty. How can I mount this network directory as a volume on the windows host and access it inside the container?

Working with local directories works just fine, so the following command works as expected.

docker run -v c:/Users/:/data alpine ls /data

I can make it work in linux since I can mount the share with cifs-utils on a local directory and use that directory as the volume.

Edit: Looks like this is not possible: How to mount network Volume in Docker for Windows (Windows 10)


回答1:


My colleague came up with this and it works with our company network drive and it might help someone out there.

We start by creating a docker volume named mydockervolume.

docker volume create --driver local --opt type=cifs --opt device=//networkdrive-ip/Folder --opt o=user=yourusername,domain=yourdomain,password=yourpassword mydockervolume
  • --driver specifies the volume driver name
  • --opt Sets driver specific options. I guess they are given to the linux mount command when the container starts up.

We can then test that the volume works with
docker run -v mydockervolume:/data alpine ls /data

Here you can read more about driver specific options and docker volume create




回答2:


I didn't find a native CIFS storage driver on docker.

You can use an external volume plugin like this one: https://github.com/ContainX/docker-volume-netshare which support NFS, AWS EFS & Samba/CIFS



来源:https://stackoverflow.com/questions/50239386/docker-add-network-drive-as-volume-on-windows

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!