【问题标题】:One docker container, one samba share and permissions Problems一个 docker 容器,一个 samba 共享和权限问题
【发布时间】:2020-09-06 15:03:05
【问题描述】:

按照 docker 命令:

sudocker run --restart unless-stopped --name lancache -v /mnt/steamcache/CacheServer/cache:/data/cache -v /mnt/steamcache/CacheServer/logs:/data/logs -p My-Server-IP:80:80 lancachenet/monolithic:latest

也是我的挂载命令:

sudo mount -t cifs -o username=MYUSERNAME //My-Samba-File-Server-IP/games /mnt/steamcache

Docker 能够在我的 samba 共享中创建两个文件夹,但没有获得在该文件夹“缓存”中创建文件夹的权限。

2020/09/01 16:41:28 [crit] 1752#1752: *1 mkdir() "/data/cache/cache/7d" 在上游读取时失败(13:权限被拒绝),客户端:客户端- IP,服务器:,请求:“GET /depot/1/manifest/5928322771446233610/5 HTTP/1.1”,上游:“http://155.133.248.29:80/depot/1/manifest/5928322771446233610/5”,主机: “cache18-ams1.steamcontent.com” 2020/09/01 16:41:28 [crit] 1752#1752: *2 mkdir() "/data/cache/cache/c2" 在读取上游时失败(13:权限被拒绝),客户端:客户端 IP,服务器:,请求:“GET /depot/3/manifest/8096513071444961518/5 HTTP/1.1”,上游:“http://155.133.248.29:80/depot/3/manifest/8096513071444961518/5”,主机:“cache18- ams1.steamcontent.com" 2020/09/01 16:41:28 [crit] 1754#1754: *3 mkdir() "/data/cache/cache/3e" 在读取上游时失败(13:权限被拒绝),客户端:客户端 IP,服务器:,请求:“GET /depot/2/manifest/2139852524811213490/5 HTTP/1.1”,上游:“http://155.133.248.13:80/depot/2/manifest/2139852524811213490/5”,主机:“cache2- ams1.steamcontent.com" 2020/09/01 16:41:28 [crit] 1753#1753: *5 mkdir() "/data/cache/cache/78" 在读取上游时失败(13:权限被拒绝),客户端:客户端 IP,服务器:,请求:“GET /depot/74/manifest/5000716531281502924/5 HTTP/1.1”,上游:“http://155.133.248.13:80/depot/74/manifest/5000716531281502924/5”,主机:“cache2- ams1.steamcontent.com" 2020/09/01 16:44:27 [crit] 1755#1755: *12 mkdir() "/data/cache/cache/2b" 在读取上游时失败(13:权限被拒绝),客户端:客户端 IP,服务器:,请求:“获取/AppInfo/1042420/sha/c87d5ae3d06609fd093145ed24417160ca275ed24417160ca271eef.txt.gz http / 1.1”,上游:“http://95.101.90.177:80/appinfo/1042420/sha/c87d5ae3d06609fd093145ed24417160ca271eef.txt.gz”主机:“clientconfig.akamai.steamstatic.com”

任何建议我做错了什么?

谢谢。

编辑: 我在虚拟机上使用 Ubuntu。 Samba-Share 属于 Synology NAS。

没人知道吗?

【问题讨论】:

    标签: docker permissions samba cifs


    【解决方案1】:

    我相信你可以分两步解决这个问题:

    1. 使用命令获取您的主机用户 uid 和 gid:

      id -u && id -g

    2. 添加 -u 到你的运行命令 [用户名或 UID(格式:[:])]

    例如。假设您的主机用户的 UID=1000 和 GID=1000 您的 docker run 命令应该是:

    docker run \
    --restart unless-stopped \
    --name lancache \
    -v /mnt/steamcache/CacheServer/cache:/data/cache \
    -v /mnt/steamcache/CacheServer/logs:/data/logs \
    -p My-Server-IP:80:80 \
    -u 1000:1000 \
    lancachenet/monolithic:latest
    

    或者把它们放在一起:

    docker run \
    --restart unless-stopped \
    --name lancache \
    -v /mnt/steamcache/CacheServer/cache:/data/cache \
    -v /mnt/steamcache/CacheServer/logs:/data/logs \
    -p My-Server-IP:80:80 \
    -u "$(id -u):$(id -g)" \
    lancachenet/monolithic:latest
    

    这样做可以避免 docker 容器和主机之间出现很多权限错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-06-21
      • 2013-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-31
      • 2022-01-12
      • 1970-01-01
      相关资源
      最近更新 更多