我正在尝试为Docker设置远程主机配置。设置证书后,我运行了dockerd命令,该命令给出了错误:
dockerd --tlsverify --tlscacert=ca.pem --tlscert=server-cert.pem --tlskey=server-key.pem -H=0.0.0.0:2376
>>> unable to configure the Docker daemon with file /etc/docker/daemon.json: open /etc/docker/daemon.json: permission denied
我正在从非root用户运行,并且已经将我的用户添加为Docker组的一部分。我正在使用的Docker版本是:
Docker version 17.12.0-ce, build c97c6d6
我在下面尝试过,但仍然收到相同的错误:
1. the /etc/docker/daemon.json file is having {}
2. I also removed the /etc/docker/daemon.json
3. I also changed ownership but same issue.
daemon.json的权限为:-rw-r--r--
最佳答案
dockerd
守护程序必须以root用户身份运行。它正在创建网络 namespace ,挂载文件系统以及其他用户帐户无法完成的任务。您需要使用sudo
这样的命令来运行这些命令。
docker套接字(/var/run/docker.sock
)配置为允许docker客户端由docker组中的用户访问api。这是客户端,而不是守护程序,因此您无法以用户身份运行守护程序。
关于docker - 拒绝打开/etc/docker/daemon.json的Docker权限:拒绝权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48126392/