Вызов docker-контейнера из jenkins (в сокете запрещены разрешения)

Я пытаюсь запустить образ Docker из конвейера Jenkins, но получаю следующую распространенную ошибку разрешения:

[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'.

Я заметил, что этот сокет принадлежит группе демонов:

$ ls -la /var/run/docker.sock
lrwxrwxrwx  1 root  daemon  61 May 24 15:50 /var/run/docker.sock -> /Users/pmaugeri/Library/Containers/com.docker.docker/Data/s60

Обратите внимание, что в моей системе нет группы докеров.

Поэтому я попытался добавить пользователя 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
  • Версия докера: 18.03.1-ce, сборка 9ee9f40

0 ответов

Другие вопросы по тегам