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

Windows共享文件夹挂载Docker容器遇权限拒绝问题求助

Docker挂载Windows CIFS共享权限拒绝问题排查

背景信息

  • Windows共享目录:E:\share,已配置Everyone完全控制共享权限
  • 系统:Windows 11,当前登录为微软邮箱绑定账户
  • Docker与共享目录同主机,卷配置使用私有IP 192.168.15.46
  • Go 1.19程序仅维持容器运行,无业务逻辑

代码与配置

Go程序(groupshare.go)

package main

import (
    "bufio"
    "fmt"
    "os"
)

func main() {
    reader := bufio.NewReader(os.Stdin)
    fmt.Print("Type something: ")
    command, _ := reader.ReadString('\n')
    fmt.Println("you typed:", command)
}

Dockerfile

FROM golang:1.16

COPY groupshare.go go.mod /app/

WORKDIR /app

RUN go mod download

RUN go build -o main

CMD ["./main"]

操作命令
创建卷:

docker volume create --driver local --opt type=cifs --opt device=//DESKTOP-TMA/share --opt o=addr=192.168.15.46,username=DESKTOP-TMA/anyUser,password=******,domain=DESKTOP-TMA,vers=3.0 sharevolume

构建镜像:

docker build -t groupshare .

运行容器:

docker run -it --rm -v sharevolume:/mnt/share  groupshare

错误输出

docker: Error response from daemon: error while mounting volume '/var/lib/docker/volumes/sharevolume/_data': failed to mount local volume: mount //DESKTOP-TMA/share:/var/lib/docker/volumes/sharevolume/_data, data: addr=192.168.15.46,username=DESKTOP-TMA/totalys,password=********,domain=DESKTOP-TMA,vers=3.0: permission denied.

已尝试新建本地用户并调整权限,问题未解决。


排查方向与解决方案

  1. 微软账户身份验证修正
    Windows 11微软账户的用户名应为完整邮箱(如xxx@outlook.com),而非机器名/账户名格式。若开启两步验证,需使用微软账户的应用密码替代登录密码。调整卷创建命令的username参数:

    docker volume create --driver local --opt type=cifs --opt device=//192.168.15.46/share --opt o=addr=192.168.15.46,username=your-ms-email@outlook.com,password=your-app-password,vers=3.0 sharevolume
    
  2. CIFS版本调整
    部分Windows 11环境对CIFS 3.0支持不佳,尝试降级vers参数为2.1或1.0:

    --opt o=...,vers=2.1,...
    
  3. NTFS权限补全
    仅设置共享权限不足,需在E:\share的属性-安全选项卡中,给目标账户(或Everyone)添加完全控制的NTFS权限。

  4. 本地账户配置要点
    若使用本地账户:

    • 必须设置密码(无密码账户无法通过SMB访问共享)
    • 卷命令中省略domain参数,直接用username=本地账户名
    • 确保账户在共享和NTFS权限中都被授权
  5. Docker运行权限
    以管理员身份启动Docker Desktop,非管理员权限可能无法完成CIFS挂载。

  6. NetBIOS解析问题
    将device参数中的//DESKTOP-TMA/share替换为//192.168.15.46/share,避免主机名解析失败。

  7. 防火墙与SMB设置
    确认Windows防火墙允许“文件和打印机共享”规则,且SMB 1.0/CIFS文件共享支持已启用(部分Windows 11默认禁用SMB 1.0)。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 07:22:58