詹金斯的工作许可被拒绝

时间:2018-03-27 07:09:51

标签: jenkins permissions docker-compose jenkins-pipeline

我正在使用此管道脚本运行管道作业

node {
    stage ('Prepare Environment') {
      checkout scm
      sh 'npm install'
    }
    stage('Build') {
      sh 'docker-compose --verbose up -d'
    }
}

并且docker-compose

出错
compose.config.config.find: Using configuration files: ./docker-compose.yml
docker.auth.find_config_file: Trying paths: ['/var/lib/jenkins/.docker/config.json', '/var/lib/jenkins/.dockercfg']
docker.auth.find_config_file: No config file found
Traceback (most recent call last):
  File "bin/docker-compose", line 6, in <module>
  File "compose/cli/main.py", line 71, in main
  File "compose/cli/main.py", line 121, in perform_command
  File "compose/cli/command.py", line 40, in project_from_options
  File "compose/cli/command.py", line 118, in get_project
  File "compose/cli/command.py", line 93, in get_client
  File "site-packages/docker/api/daemon.py", line 177, in version
  File "site-packages/docker/utils/decorators.py", line 46, in inner
  File "site-packages/docker/api/client.py", line 191, in _get
  File "site-packages/requests/sessions.py", line 521, in get
  File "site-packages/requests/sessions.py", line 508, in request
  File "site-packages/requests/sessions.py", line 618, in send
  File "site-packages/requests/adapters.py", line 490, in send
requests.exceptions.ConnectionError: ('Connection aborted.', error(13, 'Permission denied'))

此外,我尝试在同一个目录中使用jenkins用户在同一台​​计算机上执行此命令,它没有错误,工作正常。

2 个答案:

答案 0 :(得分:1)

这似乎是一个权限问题,也许您的docker-compose.yml文件(或二进制文件)只能由jenkins用户读取。

答案 1 :(得分:0)

似乎jenkins作业执行者有问题,即使我多次用/restart重新启动jenkins,也不要重新加载shell权限。

但是使用systemctl restart jenkins重新启动jenkins deamon将完成这项工作。