Docker,复制资源权限的奇怪问题

Posted

技术标签:

【中文标题】Docker,复制资源权限的奇怪问题【英文标题】:Docker, strange issue with permissions in copied resources 【发布时间】:2015-01-28 16:57:28 【问题描述】:

几天前我开始使用 Docker,并且已经能够对我的第一台服务器进行 docker 化。但有几个怪癖。一个与复制资源目录中的文件权限有关。请参阅容器中的以下 shell 会话:

1dfcc66f2344:/etc/jetty8% pwd
/etc/jetty8
1dfcc66f2344:/etc/jetty8% id
uid=1000(web) gid=111(jetty) groups=111(jetty)
1dfcc66f2344:/etc/jetty8% ls -al
total 68
drwxr-xr-x   5 web  jetty  4096 Nov 30 16:07 .
drwxr-xr-x 119 root root   4096 Nov 30 16:43 ..
drwxrwx---   2 web  jetty  4096 Nov 30 16:07 contexts
-rw-rw----   1 web  jetty  1004 Nov 26 12:35 jetty-contexts.xml
-rw-rw----   1 web  jetty  1452 Nov 26 12:35 jetty-logging.xml
-rw-rw----   1 web  jetty  2277 Nov 26 12:35 jetty-shared-webapps.xml
-rw-rw----   1 web  jetty   169 Nov 26 12:35 jetty.conf
-rw-rw----   1 web  jetty  3637 Nov 26 12:35 jetty.xml
-rw-rw----   1 web  jetty  8507 Nov 26 12:35 start.config
-rw-rw----   1 web  jetty 24426 Nov 26 12:35 webdefault.xml
1dfcc66f2344:/etc/jetty8% cd contexts
contexts: Permission denied.

如您所见,contexts 应该可以被拥有它的用户 web 访问。但它实际上无法访问该目录。

该目录与Dockerfile 中的以下部分一起安装。

COPY resources/etc/jetty8 /etc/jetty8/
RUN chown -R web:jetty /etc/jetty8/

我通过boot2docker 从Mac OS X 主机运行它。 谢谢。

【问题讨论】:

这看起来像是一个副本:***.com/questions/24288616/… 【参考方案1】:

嗯,因为这是 Boot2Docker,它更可能与 aufs 的限制有关 - 感觉很像 https://github.com/docker/docker/issues/783

【讨论】:

以上是关于Docker,复制资源权限的奇怪问题的主要内容,如果未能解决你的问题,请参考以下文章

Docker 复制和更改所有者

docker部署可不可以隐藏源码

基于Docker的Mysql主从复制搭建

基于Docker的Mysql主从复制搭建

docker背后的内核知识

基于Docker的MySQL主从复制搭建及原理