Jenkins在shell脚本运行docker权限报错解决

报错环境

系统信息

Distributor ID: Ubuntu
Description:    Ubuntu 16.04.1 LTS
Release:        16.04
Codename:       xenial

docker 信息

Docker version 18.06.0-ce, build 0ffa825

错误信息

能够在shell中使用docker version打印版本号,但是无法执行docker,报错信息如下

+ docker run -i --rm --name my-node-8 -u 0 -v /var/lib/jenkins/workspace/hexo-blogs:/usr/src/myapp -w /usr/src/myapp daocloud.io/node:8.0.0-alpine node -v
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.38/containers/create?name=my-node-8: dial unix /var/run/docker.sock: connect: permission denied.

解决方法

将jenkins用户加入docker组
重启Jenkins服务

sudo gpasswd -a jenkins docker
sudo service jenkins restart
原文地址:https://www.cnblogs.com/morang/p/9536622.html