`/ etc / sub {u,g} id`中用户的意义是什么? (帮我grok用户名称空间)
我想确保我的docker容器内的任何用户总是映射到我的docker主机上的特定用户。 我已经尝试使用此参考https://stackoverflow.com/a/35854547/1020678
/etc/subuid
的用户名似乎被严格用作映射到值<start id>:<range>
key <start id>:<range>
的关键字<start id>:<range>
,但除此之外似乎没有任何用途。
真正困扰我的是在/etc/subuid
需要一个用户,当这个用户在/etc/subuid
容器中装入卷时似乎没有权限写入文件系统。
按照链接中的示例,我以用户ns1
身份执行以下操作:
$ mkdir test && docker run -ti -v $(pwd)/test:/tmp alpine touch /tmp/foobar
返回: touch: /tmp/foobar: Permission denied
看起来用户ns1
没有--userns-remap=ns1
好处,那么为什么在为ns1-root
和ns1-user1
启用用户命名空间时需要此用户? 这些用户可以在权限设置正确时写入泊坞窗卷,但为什么不是ns1
?
是否有可能实现我的目标,或者我必须显式定义在我的容器内外的所有用户/组,使用/etc/subuid
中的起始ID的偏移量(在我链接的示例中为500000)?