jenkins pipeline 操作docker命令时出现Got permission denie
Got permission denie
·
这是因为jenkins默认使用jenkins用户操作,只需要将jenkins用户加入docker 组
dir('release') {
sh "cat harbor_password.txt | docker login harbor-local.xxx.com --username admin --password-stdin"
sh "docker build -t ${HARBOR_IMAGE} ."
sh "docker push ${HARBOR_IMAGE}"
sh "echo '$IMAGETAG' >> $JENKINS_HOME/workspace/CD/xxx-CD/DOCKER_TAGS"
echo "===============Successfully pushed Docker Image ${HARBOR_IMAGE} .==============="
echo "Cleaning up workspace..."
cleanWs()
}
执行结果
出现“Got permission denied”报错,主要是权限问题,jenkins pipeline是在master上执行的,Jenkins是由jenkins用户启动的,但是jenkins用户没有执行docker的权限,所以导致以上报错,所以我们的解决方法如下
$ usermod -a -G docker jenkins
$ systemctl restart jenkins
重启jenkins server即可
更多推荐
已为社区贡献1条内容
所有评论(0)