Nginx Docker权限仅在RHEL 6.6上被拒绝

Nginx Docker权限仅在RHEL 6.6上被拒绝,nginx,docker,redhat,rhel,Nginx,Docker,Redhat,Rhel,所以我有一个挑战,需要一个正确的方向。我们使用RedHat 6.6在一个新环境中支持docker,虽然它似乎运行正常,但从容器内部读取的内容似乎存在权限问题 例如: 使用nginx:1映像(从docker hub中提取),它可以在我的Macbook、CentOS 6.6和Rhel 6.5服务器上工作,但不能在Rhel 6.6中工作。当它工作时,您将获得默认的欢迎使用Nginx页面。当它不起作用时,会出现HTTP403错误。在nginx日志中,错误消息是/usr/share/nginx/html/

所以我有一个挑战,需要一个正确的方向。我们使用RedHat 6.6在一个新环境中支持docker,虽然它似乎运行正常,但从容器内部读取的内容似乎存在权限问题

例如:

使用nginx:1映像(从docker hub中提取),它可以在我的Macbook、CentOS 6.6和Rhel 6.5服务器上工作,但不能在Rhel 6.6中工作。当它工作时,您将获得默认的欢迎使用Nginx页面。当它不起作用时,会出现HTTP403错误。在nginx日志中,错误消息是/usr/share/nginx/html/index.html权限被拒绝

我也尝试过httpdweb服务器映像(来自DockerHub),在RHEL6.6中也有同样的体验,而它在其他地方都可以工作

任何建议都很好

注: RHEL 6.5和RHEL 6.6的内核是相同的,我们使用docker 1.5和go 1.7的相同版本。

问题解决了


docker/opt/docker/devicemapper/mnt的mnt目录具有不正确的文件权限。一个小小的chmod-R 755到/opt/docker/deviceapper/mnt和viola它正在工作

也许最好问一下,我想知道主机上是否启用了selinux,如果启用了,将其置于许可模式是否允许按预期工作(
setEnforce0
)。如果是这种情况,您需要更新selinux配置或持续禁用它。但是Docker在每次运行新容器时默认使用错误的权限。您是否想过如何解决此问题,而不是每次创建新容器时使用chmod 755?