Jenkins构建Docker时,docker拉取镜像权限不足问题?

使用Jenkins构建Docker,使用Docker Build and Publish插件。程序编译过后,进入Dockerfile构建Docker报错,报错如下:

[OppDocker] $ /usr/bin/docker build -t localhost:5000/oppdocker:57 --pull=true /var/lib/jenkins/workspace/OppDocker
Sending build context to Docker daemon    644MB

Step 1/7 : FROM openjdk:8-jre-alpine
Get https://registry-1.docker.io/v2/library/openjdk/manifests/8-jre-alpine: unauthorized: incorrect username or password
Build step 'Docker Build and Publish' marked build as failure
Finished: FAILURE    

但是在本地使用docker build -t等命令是没有问题的,在Jenkins中使用shell命定(同样是docker build命令)都不会有问题。

想问一下docker大神,如何解决,其原理是什么?


补充一下:

  • jenkins用户已经在Docker这个用户组里了
  • 运行环境:Ubuntu 16.04

再次补充:

刚刚看到有可能需要docker login,我去docker hub注册了账号,在本机命令行下用docker login命令输入docker id和相应密码,仍旧不行……

阅读 9.2k
1 个回答

这和docker没半毛钱的关系。因为jenkins使用了低权限账户运行服务,自然没权限管理docker。如果你希望jenkins账户能管理docker,使用useradd -a -G docker jenkins命令把jenkins用户加入docker这个用户组就可以了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进