You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Docker Compose将网络路径挂载到Windows Docker容器?

解决Windows Docker容器挂载网络路径的可行方案

方案一:先将网络共享映射为宿主机本地盘符,再绑定挂载

  1. 在Windows宿主机上挂载网络共享:
    • 命令行执行:
      net use Z: \\host\folder /user:your_username your_password
      
      (替换Z:为未使用的盘符,your_username和your_password为访问共享的账号密码)
    • 或通过图形界面操作:此电脑 → 映射网络驱动器,选择盘符并输入共享路径,填写账号密码完成挂载。
  2. 在docker-compose.yml中使用绑定挂载:
    services:
      myservice:
        volumes:
          - type: bind
            source: Z:/
            target: c:/app/MountedLocation
    
    (Z:/替换为你刚才映射的盘符路径,确保路径为绝对路径)

方案二:使用Docker本地卷驱动创建SMB卷

Windows容器支持通过local驱动直接创建SMB类型的卷,替代Linux容器的CIFS配置:

  1. 先创建SMB卷(命令行执行):
    docker volume create --driver local ^
      --opt type=smb ^
      --opt device=\\host\folder ^
      --opt o=username=your_username,password=your_password,rw ^
      NetworkLocation
    
    (^是Windows命令行的换行符,PowerShell中可直接换行)
  2. 在docker-compose.yml中使用该卷:
    services:
      myservice:
        volumes:
          - NetworkLocation:c:/app/MountedLocation
    volumes:
      NetworkLocation:
        external: true
    
    (添加external: true表示使用已创建的外部卷)

注意事项

  • 确保Docker服务运行的账号(默认是Local System)有访问该网络共享的权限,若权限不足,可修改Docker服务的登录账号为具备共享访问权限的域账号或本地账号。
  • 若共享路径是宿主机本地的共享,需确保宿主机防火墙允许“文件和打印机共享”规则。
  • YAML配置中路径的反斜杠需转义,或使用正斜杠替代,避免解析错误。

内容的提问来源于stack exchange,提问作者user1472131

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 17:22:45