什么是PUID和PGID

网络资源 admin 2个月前 (12-12) 108次浏览 0个评论

什么是PUID和PGID

 

 Note

 

虽然Docker目前已经支持了 --user 参数。但我们的镜像目前还不兼容,所以我们还是建议继续使用PUID和PGID。

1.4.5.1.1. 为什么要用这个?

因为Docker需要系统中管理网络、文件系统、进程的权限,所以通常是以 root 的身份在运行。这意味着,容器内的用户默认也是以 root 用户运行。这种高权限的访问,并不是日常使用中所推荐的,除非你对linux运维有着深入的理解。

另一个问题就是对容器映射出来的文件的管理。如果进程是以 root 身份运行,那么它所创建的文件的所有者都是 root 用户,这有可能会导致你没有权限去修改这些文件(如果你是以非root身份登陆服务器。)

而是用 PUID 和 PGID 允许我们将容器内的用户权限映射给宿主机上的用户。我们所有的容器都可以使用这种方法来映射用户权限。


1.4.5.1.2. 使用变量

当使用我们的镜像创建容器时,确保你是用了 -e PUID 和 -e PGID

docker create --name=beets -e PUID=1000 -e PGID=1000 linuxserver/beets

如果使用 docker-compose ,把他们添加在 environment: 下面:

environment:
  - PUID=1000
  - PGID=1000

你很可能希望使用自己的 id,可以通过下面的命令来查询你当前用户的id。其中 uid 和 gid 分别对应 PUID 和 PGID

id $user

原文:https://linuxserver.watercalmx.com/general/understanding-puid-and-pgid.html


VPS小白 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址