我是码头工人的新手。我只是试着在我的本地机器(Ubuntu 16.04)上使用docker和Jenkins。
我用下面的管道脚本配置了一个新作业。
node {
stage('Build') {
docker.image('maven:3.3.3').inside {
sh 'mvn --version'
}
}
}
但是它失败了,错误如下:
在unix:///var/run/ Docker .sock试图连接到Docker守护进程套接字时被拒绝
我有Jenkins在Docker中运行,并连接Jenkins从主机Ubuntu 16.04通过卷到/var/run/docker.sock使用Docker套接字。
对我来说,解决方案是:
1) Jenkins的Docker容器内部(Docker exec - Jenkins bash on host machine)
usermod -a -G docker jenkins
chmod 664 /var/run/docker.sock
service jenkins restart (or systemctl restart jenkins.service)
su jenkins
2)主机上:
sudo service docker restart
664表示-对组中的所有者和用户进行读写(但不执行)。