jenkins pipeline 操作docker命令时出现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即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值