尝试连接到unix:///var/run/docker.sock的Docker守护程序套接字时获得的权限被拒绝 [英] Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock
问题描述
我是Docker的新手.我只是尝试在Jenkins的本地计算机(Ubuntu 16.04)中使用docker.
I am new to docker. I just tried to use docker in my local machine(Ubuntu 16.04) with Jenkins.
我使用以下管道脚本配置了新作业.
I configured a new job with below pipeline script.
node {
stage('Build') {
docker.image('maven:3.3.3').inside {
sh 'mvn --version'
}
}
}
但是失败,并出现以下错误.
But it fails with below error.
推荐答案
用户jenkins
需要添加到组docker
中:
sudo usermod -a -G docker jenkins
然后重新启动Jenkins.
Then restart Jenkins.
如果由于收到来自docker的此消息而遇到堆栈溢出的问题,但您没有使用jenkins,则错误很可能是相同的:您的非特权用户不属于docker组.
If you arrive to this question of stack overflow because you receive this message from docker, but you don't use jenkins, most probably the error is the same: your unprivileged user does not belong to the docker group.
您可以这样做:
sudo usermod -a -G docker alice
或您的用户名是什么.
您可以在执行cat /etc/group
的最后检查它,并看到像这样的东西:
You can check it at the end doing cat /etc/group
and see somethign like this:
docker:x:998:alice
其中一行.
正如伊利亚·科列斯尼科夫(Ilya Kolesnikov)在评论中所说,请重新登录!
As Ilya Kolesnikov says in the comment, relogin!
这篇关于尝试连接到unix:///var/run/docker.sock的Docker守护程序套接字时获得的权限被拒绝的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!