【问题标题】:Docker: open /certs/domain.crt: permission deniedDocker:打开/certs/domain.crt:权限被拒绝
【发布时间】:2016-03-13 02:53:49
【问题描述】:

我正在尝试设置一个私有 docker 注册表。 我正在使用自己生成的证书。但是我的注册表的 docker 日志显示了这个错误:

time="2015-12-08T08:51:54Z" level=fatal msg="open /certs/domain.crt: permission denied" 

我的证书在:

/home/centos/certs/certs/

这包含domain.crtdomain.key

我的权限被拒绝。但我不知道在这种情况下最好的解决方案是什么?我必须向哪个用户授予哪些权利?

我只是试图授予所有权利,但它不起作用: 我试过了:

sudo chmod -R 777 /home/centos/certs
sudo chown -R root:root /home/centos/certs

【问题讨论】:

    标签: permissions docker


    【解决方案1】:

    这可能是 SELinux 和 Docker 的问题:

    chcon -Rt svirt_sandbox_file_t ~/certs/
    

    然后,再试一次。

    【讨论】:

      【解决方案2】:

      在 docker 注册表主机中禁用 SElinux

      我在设置私有 Docker 注册表时遇到了相同的(权限被拒绝)问题。这个问题是 SELinux 处于 Enforcing 状态。禁用 SELinux 解决了这个问题。您可以使用以下命令禁用或使其成为许可模式 setenforce 0 ---> 无需重新启动或打开 selinux 配置文件 vi /etc/selinux/config 并更改 SELINUX=disabled

      【讨论】:

      • 请添加足够的详细信息来禁用它。
      • 我在设置私有 Docker 注册表时遇到了相同的(权限被拒绝)问题。这个问题是 SELinux 处于 Enforcing 状态。禁用 SELinux 解决了这个问题。您可以使用以下命令禁用或使其成为许可模式 setenforce 0 ---> 无需重新启动或打开 selinux 配置文件 vi /etc/selinux/config 并更改 SELINUX=disabled
      • 请将其添加到答案中。
      猜你喜欢
      • 2013-01-08
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 2013-03-13
      • 2020-05-31
      • 2020-08-31
      • 2021-11-05
      • 2018-09-08
      相关资源
      最近更新 更多