2023 群晖7.2 Docker容器权限管理
非教程,仅供参考
由于群晖更新了7.2,docker套件变成了Container Manager套件,并且增加了项目功能,也就是docker-compose,使创建容器变得更加便捷,便写篇文章当笔记。
目的:
1.dcoker容器中文件夹的权限不再使用Everyone,或是创建容器时使用高权限执行,而是单独创建用户和用户组。
2.对于环境变量没有提供PUID和PGID的容器,使用Container Manager中的管理,也就是docker-compose来设置uid和gid 。
在群晖的docker容器中,大部分设置文件夹权限都是Everyone或者创建容器时使用高权限执行。
如果容器的环境变量有提供PUID和PGID,则不必给容器那么高的权限,而是创建用户和用户组来单独为容器设置权限。
如果没有提供PUID和PGID,则需要通过SSH的命令行方式设置,如docker run --user uid:gid或docker-compose.yml里设置user: uid:gid。
群晖7.2之后,docker套件变成了Container Manager套件,提供了项目功能,也就是docker-compose,使得创建容器和设置uid和gid更加方便。
本篇以vaultwarden容器为例
一、创建用户和用户组
1.新增用户

2.除了docker文件夹只读其他禁止访问

3.所有应用程序都拒绝访问

4.新建用户组

5.选择用户vwUser

6.除了docker文件夹只读其他禁止访问

7.所有应用程序都拒绝访问

二、SSH获取uid和gid
1.开启群晖SSH,使用完后需要关闭

2.连接SSH

3.登录群晖账户,并使用命令 id vwUser 查询出uid为1034和gid为65537

三、文件夹权限设置
1.创建vaultwarden文件夹

2.在vaultwarden文件夹里创建data文件夹

3.设置docker文件夹权限,右键docker文件夹->属性->权限,选中vwUser,只勾选此文件夹

4.设置vaultwarden文件夹权限,右键vaultwarden文件夹->属性->权限,新增

四、Container Manager创建项目
1.拉取vaultwarden镜像

2.创建docker-compose.yml文件,内容如下

3.新增项目

4.项目设置如下

五、结尾
至此,所有步骤完成,以上就是本篇所有内容。

