Jenkins docker push到harbor私服报错解决方法

2021-01-31 4403点热度 2人点赞 0条评论

Jenkins报错

Jenkinsfile中使用docker push到私服的时候报错,报错信息如下:

unauthorized: unauthorized to access repository: ocp/eureka-server, action: push: unauthorized to access repository: ocp/eureka-server, action: push

这是因为jenkins在推送镜像的时候使用的是jenkins的伪用户,那么既然要推送就要登录,那么首先在当前用户生成config.json

当前用户使用docker login生成config.json

当前用户下使用如下命令进行登录

docker login harbor.aiuyo.com:643

输入用户名和你们之后在当前用户根目录的.docker目录下生成一个config.json文件,内容如下:

[wangxianfeng@hs ~]$ cat .docker/config.json 
{
        "auths": {
                "harbor.aiuyo.com:643": {
                        "auth": "d2FuZ3hpYW5mZW5nOlhpYW5mZW5nOTk="
                }
        }
}

把.docker复制到/var/lib/jenkins目录下

  1. 使用root登录后
  2. 将/用户名/.docker/目录拷贝到/var/lib/jenkins下
  3. 修改文件夹权限 chown -R jenkins.jenkins .docker
# cp -r .docker/ /var/lib/jenkins/
# cd /var/lib/jenkins/
# chown -R jenkins.jenkins .docker

王显锋

激情工作,快乐生活!

文章评论