Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 从jenkins调用docker容器(套接字上的权限被拒绝)_Macos_Docker_Jenkins_Docker For Mac - Fatal编程技术网

Macos 从jenkins调用docker容器(套接字上的权限被拒绝)

Macos 从jenkins调用docker容器(套接字上的权限被拒绝),macos,docker,jenkins,docker-for-mac,Macos,Docker,Jenkins,Docker For Mac,我正在尝试从Jenkins管道运行Docker映像,但遇到以下常见权限错误: [devops-lab] Running shell script + docker run -d --mount source=devops-lab,target=/root/data pmaugeri/alpine-akamai-cli docker: Got permission denied while trying to connect to the Docker daemon socket at unix:

我正在尝试从Jenkins管道运行Docker映像,但遇到以下常见权限错误:

[devops-lab] Running shell script
+ docker run -d --mount source=devops-lab,target=/root/data pmaugeri/alpine-akamai-cli
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.37/containers/create: dial unix /var/run/docker.sock: connect: permission denied.
See 'docker run --help'.
我注意到这个套接字属于守护进程组:

请注意,我的系统上没有docker组

因此,我尝试将jenkins用户添加到守护进程组中,但没有解决这个问题

以下是我的管道的定义:

node {
    sh 'env > env.txt' 
    for (String i : readFile('env.txt').split("\r?\n")) {
        println i
    }
    sh 'whoami' 
    docker.image('pmaugeri/alpine-akamai-cli').withRun('--mount source=devops-lab,target=/root/data') {    
    }
}
这是jenkins控制台的输出:

...
[devops-lab] Running shell script
+ whoami
jenkins
[Pipeline] sh
[devops-lab] Running shell script
+ docker run -d --mount source=devops-lab,target=/root/data pmaugeri/alpine-akamai-cli
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.37/containers/create: dial unix /var/run/docker.sock: connect: permission denied.
See 'docker run --help'.
你能帮我让这个简单的管道工作吗

提前谢谢

帕斯卡

以下是我的系统配置:

  • MacOS:MacOS Sierra v10.12.6
  • 詹金斯版本:2.122
  • Docker版本:18.03.1-ce,构建9ee9f40

所有此类问题的解决方案都是1。创建docker组2。将jenkins用户添加到docker组3。重新启动docker服务。感谢您的回复。我仍然不清楚如何让Docker在“Docker”组下运行。你知道一些解释这一点的文件吗?
...
[devops-lab] Running shell script
+ whoami
jenkins
[Pipeline] sh
[devops-lab] Running shell script
+ docker run -d --mount source=devops-lab,target=/root/data pmaugeri/alpine-akamai-cli
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.37/containers/create: dial unix /var/run/docker.sock: connect: permission denied.
See 'docker run --help'.