我是码头工人的新手。我只是试着在我的本地机器(Ubuntu 16.04)上使用docker和Jenkins。

我用下面的管道脚本配置了一个新作业。

node {
    stage('Build') {
      docker.image('maven:3.3.3').inside {
        sh 'mvn --version'
      }
    }
}

但是它失败了,错误如下:

在unix:///var/run/ Docker .sock试图连接到Docker守护进程套接字时被拒绝


当前回答

通常需要重新启动才能对新的用户组和用户生效。

其他回答

这在Ubuntu 20.04中适用

sudo chmod 666 /var/run/docker.sock

不知道它到底能做什么,但能解决问题。

我的成功

sudo usermod -a -G docker $USER
reboot

sudo setfacl——modify user:(用户名或ID):rw /var/run/docker.sock

我试着执行了几次命令

Sudo chmod 777 /var/run/docker.sock

但不幸的是,我每次登录ubuntu系统时都要这么做。 它不需要重新启动,比usermod或chown更安全。 如果用户名只存在于容器内,而不存在于主机上,则需要输入user ID。

我希望它能帮助你解决这个问题。

如果你想保持简单,可以在Dockerfile上使用fixdockergid。

sudo usermod -a -G docker jenkins
sudo service jenkins restart