首页 / 服务中心 / 教程中心 / 文档教程 / 详情
如何获取PUID、PGID?
2024/07/19

在使用绿联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
# 获取用户的UID和GID值
id -u nasuser
# 获取用户的UID值
id -g nasuser
# 获取用户的GID值

  1.  获得 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。

  1.  打开mobaxterm,点击session。

  1.  点击SSH,在 Remote host 中输入设备地址,PORT 端口输入 22。

5.  输入账号密码登录设备底层。

  1.  登录之后输入sudo -i命令回车,输入密码,获取 root 权限。

  1.  这个符号从【$】变成【#】就代表 有权限了。

  1.  使用id + 用户名获取PUID、PGID。例如输入 id ugreen 。

通过上述步骤,您可以在绿联NAS上获取到正确的 PUID 和 PGID 值,通过正确设置PUID和PGID参数,可以确保Docker容器内的应用程序具有正确的权限来访问和管理宿主机上的文件,避免权限问题带来的各种麻烦。


在线交流
关注微信公众号
服务热线:
0755-28066995
技术支持:
0755-28066995转1