我不理解 Docker 中的用户概念。
我的问题如下:
每个 Docker 容器是否有自己的用户和组,或者 Docker 容器使用主机用户管理?
我们传递给
docker run
命令的--user
参数是什么?Docker 容器或 Docker 守护进程是否能在主机操作系统上创建用户?
Docker 卷中的所有权和文件权限是如何工作的?
对于第 4 个问题,假设我有以下卷:
--volume /var/run/docker.sock:/var/run/docker.sock
而主机操作系统中 ls
和 id
命令的结果如下:
root@tashkhisi:/var/run# ls -l docker.sock
srw------- 1 root docker 0 Jul 30 18:44 docker.sock
root@novinhost:/var/run# id -u root
0
这是不是意味着我只能通过Docker容器内的id为0的用户来访问该文件?
我的意思是容器看到该文件与原始文件权限相同,但使用自己的用户?
请注意,我只想了解权限如何工作,请不要注意/var/run/docker.sock
文件。
我只是用它作为一个常见的用例。