【发布时间】:2017-12-27 04:07:34
【问题描述】:
我正在尝试让我的 Docker 容器读取和写入主机目录。
我运行容器:
docker run -it -v $(pwd):/file logstash-5.1.2
在容器内部,我可以看到 /file 在主机上有我(非root)用户的uid,并且与主机上的权限相同:
drwxrwxrwx. 2 1156 1156 4096 Jul 21 05:00 file
并且那个 root 不能访问 /file。
root@c642b0c37e09:~# ls /file
ls: cannot open directory /file: Permission denied
我已经阅读了有关在容器中创建一个与主机具有相同 uid 的用户的帖子,但这似乎是不受欢迎的。
- 为什么不能root访问目录?我认为它可以做任何事情。
- 在 Docker 中让容器读取和写入不属于 root 的挂载目录的最佳方法是什么?
- 我们也在使用 Rancher。这会让事情变得更容易吗?我还没有遇到什么不同的东西,主要是因为我想看看我是否可以纯粹在 Docker 中做到这一点。
【问题讨论】:
-
这可能是在主机上运行 SELinux 的问题。
-
我应该提到,我们在主机上运行 Red Hat。