使用 docker 命令时,出现了Using default tag: latest Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/images/create?fromImage=nginx&tag=latest": dial unix /var/run/docker.sock: connect: permission denied
是权限不足的情况
这是因为你当前的用户没有这个权限。默认情况下,docker 命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户。我们当前的用户不是root用户。
解决办法1:
在 docker 命令前加上 sudo
例如 docker pull nginx
=> sudo docker pull nginx
解决办法2:
在 docker 组中加入当前用户
- 查看/var/run/docker.sock文件的权限
ll /var/run/docker.sock
- 将当前用户加入用户组
sudo gpasswd -a $USER docker
- 更新用户组数据,使修改生效
newgrp docker
- 尝试是否还有权限问题
- 如果还有权限问题,尝试给其他用户添加读写权限
sudo chmod o+rw /var/run/docker.sock
- 再次尝试,一般情况下是可以不用在 docker 命令前加
sudo
了
参考:
将用户添加到docker用户组文章来源:https://www.toymoban.com/news/detail-595290.html
其他:
Docker 安装 Nginx 容器 (完整详细版)
使用docker安装nginx
linux服务器上,docker安装nginx文章来源地址https://www.toymoban.com/news/detail-595290.html
到了这里,关于docker 命令权限问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!