ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

如何3步搞定xiaomusic的Docker容器用户权限:新手指南

如何3步搞定xiaomusic的Docker容器用户权限:新手指南 如何3步搞定xiaomusic的Docker容器用户权限新手指南【免费下载链接】xiaomusic使用小爱音箱播放音乐音乐使用 yt-dlp 下载。项目地址: https://gitcode.com/GitHub_Trending/xia/xiaomusic当你在UNRAID上第一次用Docker部署xiaomusic时大概率会碰到下载的音乐在宿主机上全是root所有、普通用户打不开的情况。这就是Docker容器用户权限没配对跟着下面步骤走10分钟能解决。快速上手30秒指定容器运行用户别急着改一堆配置先用一条命令验证思路docker run -d --name xiaomusic \ -u 1000:1000 \ -v /mnt/user/appdata/xiaomusic:/app/music \ -p 8090:8090 xiaomusic:latest这条命令的作用是以UID、GID都是1000的用户身份跑容器音乐目录挂到/app/music8090是服务端口细节见 Dockerfile。跑起来后新下载歌曲的属主就是1000不再是root。权限对齐后网页端的下载、收藏这些标签页里的歌曲就都能正常管理和清理了。进阶配置Docker容器用户权限的三种持久化方式先用id查清宿主机真实UID适用场景启动前搞清楚1000:1000到底该填什么别抄网上的数字。id # 查看当前用户的UID/GID stat -c %u %g /mnt/user/music # 查看音乐目录实际属主注意UNRAID每个share的UID可能不一样以stat查到的目录属主为准。Docker Compose持久化配置用户权限适用场景长期部署改动要写进文件而不是每次敲命令。services: xiaomusic: image: xiaomusic:latest user: 1000:1000改完之后执行docker compose up -d重建容器就生效了。注意user的值必须带引号这个坑下面会细说。宿主机目录属主预先对齐适用场景容器用户配了但老目录还是root的新文件能写、老文件打不开。chown -R 1000:1000 /mnt/user/appdata/xiaomusic chmod -R 750 /mnt/user/appdata/xiaomusic执行一次即可之后容器内写的文件自动就是1000属主不用反复chown。目录里会生成download等子目录对应 config-example.json 里的download_path一并处理最省心。踩坑提醒⚠️ 坑点1配了-u还是报权限拒绝 容器日志提示写/app/music失败多半是宿主机目录属主还是root非root用户没写权限。先执行chown -R 1000:1000把目录属主改掉再启动容器。⚠️ 坑点2Compose里user没加引号 up的时候报mapping values are not allowed in this context是因为1000:1000不带引号被YAML当成了嵌套结构。改成user: 1000:1000就好。⚠️ 坑点3以为容器root和宿主机root没关系 其实容器里的rootUID 0会直接落到宿主机的root上文件全都变root所有。加上-u 1000:1000再docker compose up -d属主就正了。记住容器里的UID对齐宿主机权限问题就消失了一大半。【免费下载链接】xiaomusic使用小爱音箱播放音乐音乐使用 yt-dlp 下载。项目地址: https://gitcode.com/GitHub_Trending/xia/xiaomusic创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表