如何获取PUID、PGID?
本帖最后由 吉伊 于 2025-8-26 17:47 编辑在使用绿联NAS(UGOS Pro)时,为了确保Docker容器能够正确访问和管理文件系统,配置PUID(用户ID)和PGID(组ID)是非常重要的。PUID和PGID是Linux系统中的用户和组的标识符,使用这些标识符可以确保Docker容器有适当的权限来访问宿主机上的文件。什么是PUID和PGID?
● PUID(用户ID):标识系统中的特定用户。● PGID(组ID):标识系统中的特定用户组。在Docker容器中运行的应用程序需要适当的文件权限来读写宿主机上的文件。通过设置PUID和PGID,可以确保这些应用程序以正确的用户身份运行,从而获得所需的权限。
为什么需要设置PUID和PGID?
1. 权限管理:确保容器内的应用程序以特定用户身份运行,防止权限错误。2. 文件访问:确保容器内的应用程序能够正确访问宿主机上的文件目录。3. 安全性:限制容器内的应用程序只能以特定用户权限运行,减少安全风险。
如何获取和设置PUID和PGID?
在绿联NAS上获取PUID和PGID的方法如下:1. 登录NAS:通过SSH登录到NAS。2. 获取用户ID(PUID):将<username>替换为您需要运行Docker容器的用户名。该命令将返回该用户的用户ID。3. 获取组ID(PGID):同样,将<username>替换为该用户的用户名。该命令将返回该用户的组ID。4. 假设我们有一个用户名为nasuser,通过以下命令获取其PUID和PGID。
id nasuser
<div># 获取用户的UID和GID值
id -u nasuser
# 获取用户的UID值
id -g nasuser
# 获取用户的GID值</div>5. 获得 PUID 和 PGID 值以后我们就可以使用这些ID来运行一个Docker容器。
在Docker中使用PUID和PGID
在运行Docker容器时,可以使用以下命令行参数来设置PUID和PGID:docker run -d
--name=container_name
-e PUID=<user_id>
-e PGID=<group_id>
-v /path/to/config:/config
-v /path/to/data:/data
image_name● -e PUID=<user_id>:设置容器运行的用户ID。● -e PGID=<group_id>:设置容器运行的组ID。● -v /path/to/config:/config:映射配置文件目录。● -v /path/to/data:/data:映射数据目录。● image_name:Docker镜像的名称。
示例
1. 下载一个远程连接的工具(例如使用 MobaXterm)。2. 在【控制面板-终端机】中开启 SSH。3. 打开mobaxterm,点击session。4. 点击SSH,在 Remote host 中输入设备地址,PORT 端口输入 22。5. 输入账号密码登录设备底层。6. 登录之后输入sudo -i命令回车,输入密码,获取 root 权限。
7. 这个符号从【$】变成【#】就代表 有权限了。
8. 使用id + 用户名获取PUID、PGID。例如输入 id ugreen 。通过上述步骤,您可以在绿联NAS上获取到正确的 PUID 和 PGID 值,通过正确设置PUID和PGID参数,可以确保Docker容器内的应用程序具有正确的权限来访问和管理宿主机上的文件,避免权限问题带来的各种麻烦。
页:
[1]