我正在使用此管道脚本运行管道作业
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
用户在同一台计算机上执行此命令,它没有错误,工作正常。
答案 0 :(得分:1)
这似乎是一个权限问题,也许您的docker-compose.yml文件(或二进制文件)只能由jenkins用户读取。
答案 1 :(得分:0)
似乎jenkins作业执行者有问题,即使我多次用/restart
重新启动jenkins,也不要重新加载shell权限。
但是使用systemctl restart jenkins
重新启动jenkins deamon将完成这项工作。