[英]SMB/CIFS volume in Docker-compose on Windows
我有一个共享 CIFS/SMB 共享的 NAS,我想在 Windows 上使用 docker-compose 将其挂载为卷。
我已经阅读了多项建议(例如使用插件,将其安装在 Windows 中以提供驱动器号),但没有找到任何可以工作的东西。 我知道这不是 100% 简单的,因为我是从另一个操作系统内部访问它。 但这听起来应该是可能的。
So say that I have a network path, \\my-nas\share
, how would I go about mounting this inside a docker container using docker-compose on a Windows host?
我完全误解了这个 docker 文档页面,上面写着
The built-in local driver on Windows does not support any options.
这并不意味着您不能在 Windows 中使用 cifs 驱动程序。
解决方法很简单
services:
my-service:
volumes:
- nas-share:/container-path
volumes:
nas-share:
driver_opts:
type: cifs
o: "username=[username],password=[password]"
device: "//my-nas/share"
将[username]
和[password]
替换为 NAS 的实际用户名和密码,它可以完美运行。
这对我使用 WindowsServer2019 主机上的 windows 容器很有用。 它需要版本 1705 或更高版本:
https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-containers/persistent-storage#bind-mounts
首先将文件共享挂载到主机。
$creds = Get-Credential New-SmbGlobalMapping -RemotePath \contosofileserver\share1 -Credential $creds -LocalPath G:
然后 map 驱动器正常组成:
services:
my-service:
volumes:
- Z:\:/container-path
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.