目录
问题描述
使用普通用户运行docker run
的时候,如果该用户不在用户组docker
内会有如下报错
$ docker run hello-world
docker: 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.40/containers/create: dial unix /var/run/docker.sock: connect: permission denied.
See 'docker run --help'.
解决办法
step1: 将用户加入 docker 用户组
使用usermod
命令将当前用户加入 docker 用户组
sudo usermod -aG docker $USER
命令说明
usermod
– 用来改变用户组、权限、家目录、密码之类的,和用户相关的一些设置a
– a for append, 将用户添加到补充组。仅与-G 选项一起使用G
– 补充用户组 (-g 为主要用户组)docker
– 用户组名$USER
– 当前用户名环境变量
step2: 刷新用户组
使用su - $USER
刷新用户组
然后使用id
命令查看用户组,用户组中应该包含了docker
了
step3: 验证问题
再次运行docker run hello-world
测试,问题应该得到解决了
最新评论