我是docker的新手。我正试图在树莓pi上运行一个docker服务器,并将卷指向网络共享,这样我就可以避免直接在pi上运行持久文件。我正在使用docker compose,并试图利用卷将SMB共享从Unraid服务器装载到docker容器。
这就是我尝试挂载SMB共享的方式:
volumes:
downloads:
driver_opts:
type: cifs
o: username=COOLUSERNAMEHERE,password=SUPERSECRETPASSWORD,vers=3
device: //192.168.0.110/downloads
然后,我将这个卷安装在容器中,如下所示:
services:
myservicename:
image: theplaceigetmyimagefrom
container_name: myservice
environment:
- PUID=1000
- PGID=1000
- TZ=America/Toronto
volumes:
- downloads:/downloads
ports:
- 1234:1234
restart: unless-stopped
这个卷装载得很好,但它装载为只读。无论我做什么,我都无法获得它的写入权限。我又是码头工人的新手。所以我可能在尝试错误的东西。我已经尝试将privileged: true
添加到容器中,但这并没有改变任何内容。我正在连接的SMB共享被设置为公共和共享,因此不应该有任何用户问题,但我也登录了一个";读/写";访问Unraid中设置的文件夹。
任何关于下一步行动的想法都将不胜感激。
想明白了。我将版本更改为3.0(不确定这是否有任何作用(,并添加了GID和UID以及rw选项:
volumes:
downloads:
driver_opts:
type: cifs
o: username=COOLUSERNAMEHERE,password=SUPERSECRETPASSWORD,uid=1000,gid-1000,vers=3.0,rw
device: //192.168.0.110/downloads
它现在按预期连接。