harbor 中 使用 push 上传镜像时候 显示 没有认证

2023-11-06



harbor 中 使用 upload 上传镜像时候 显示 没有认证



概述:

VMware harbor 安装完成后,

 使用docker tag 打新的标签,

然后 用docker push上传镜像的时候,

显示 安全方面的错误。



1.
客户端显示信息
[root@ip-172-30-0-20 ~]# docker push   172.30.0.20:5000/busybox:cloud
The push refers to a repository [172.30.0.20:5000/busybox]
5f70bf18a086: Image push failed
1834950e52ce: Image push failed
unauthorized: authentication required
[root@ip-172-30-0-20 ~]#

2. 服务器端:
registry_1  |time="2016-06-08T11:02:29.929222341Z" level=debugmsg="authorizing request" go.version=go1.6.1http.request.host="172.30.0.20:5000"http.request.id=300a9dbe-6027-41bb-a9a3-64e7eaf68f76 http.request.method=GEThttp.request.remoteaddr="172.30.0.20:41271"http.request.uri="/v2/"http.request.useragent="docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"instance.id=71df9a7e-0ec8-4522-8978-bbd01813541f service=registry version=v2.4.0
registry_1 
|time="2016-06-08T11:02:29.929388489Z" level=warning msg="errorauthorizing context: authorization token required" go.version=go1.6.1http.request.host="172.30.0.20:5000" http.request.id=300a9dbe-6027-41bb-a9a3-64e7eaf68f76http.request.method=GET http.request.remoteaddr="172.30.0.20:41271"http.request.uri="/v2/"http.request.useragent="docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64" instance.id=71df9a7e-0ec8-4522-8978-bbd01813541fservice=registry version=v2.4.0
registry_1 
| 172.30.0.20 - -[08/Jun/2016:11:02:29 +0000] "GET /v2/ HTTP/1.1" 401 87 """docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"
ui_1       
| 2016-06-08T11:02:29Z [INFO]request url:/service/token?scope=repository%3Abusybox%3Apush%2Cpull&service=token-service
ui_1       
| 2016-06-08T11:02:29Z[DEBUG] [authenticator.go:52]: Current AUTH_MODE is db_auth
ui_1       
| 2016-06-08T11:02:29Z[DEBUG] [authutils.go:42]: scopes: [repository:busybox:push,pull]
ui_1       
| 2016-06-08T11:02:29Z [INFO]current access, type: repository, name:busybox, actions:[]
ui_1        | 2016/06/08 11:02:29[router.go:828][D] | GET        |/service/token                          | 36.754061ms      | match      | /service/token                          
|
registry_1 
|time="2016-06-08T11:02:29.973905388Z" level=debugmsg="authorizing request" go.version=go1.6.1http.request.host="172.30.0.20:5000"http.request.id=f7031b1d-2055-43db-8bcc-a587d95dc1bf http.request.method=HEADhttp.request.remoteaddr="172.30.0.20:41275"http.request.uri="/v2/busybox/blobs/sha256:385e281300cc6d88bdd155e0931fbdfbb1801c2b0265340a40481ee2b733ae66"http.request.useragent="docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"instance.id=71df9a7e-0ec8-4522-8978-bbd01813541f service=registryvars.digest="sha256:385e281300cc6d88bdd155e0931fbdfbb1801c2b0265340a40481ee2b733ae66"vars.name=busybox version=v2.4.0
registry_1 
| time="2016-06-08T11:02:29.974703102Z"level=warning msg="error authorizing context: insufficient scope"go.version=go1.6.1 http.request.host="172.30.0.20:5000"http.request.id=f7031b1d-2055-43db-8bcc-a587d95dc1bf http.request.method=HEADhttp.request.remoteaddr="172.30.0.20:41275"http.request.uri="/v2/busybox/blobs/sha256:385e281300cc6d88bdd155e0931fbdfbb1801c2b0265340a40481ee2b733ae66"http.request.useragent="docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"instance.id=71df9a7e-0ec8-4522-8978-bbd01813541f service=registryvars.digest="sha256:385e281300cc6d88bdd155e0931fbdfbb1801c2b0265340a40481ee2b733ae66"vars.name=busybox version=v2.4.0
registry_1 
| 172.30.0.20 - -[08/Jun/2016:11:02:29 +0000] "HEAD /v2/busybox/blobs/sha256:385e281300cc6d88bdd155e0931fbdfbb1801c2b0265340a40481ee2b733ae66HTTP/1.1" 401 139 "" "docker/1.10.3-cs3 go/go1.5.4git-commit/6df5588 kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"
registry_1 
|time="2016-06-08T11:02:29.975992181Z" level=debugmsg="authorizing request" go.version=go1.6.1http.request.host="172.30.0.20:5000"http.request.id=2aed3a1d-8bd2-4b4a-9507-9aa01f76d009 http.request.method=HEADhttp.request.remoteaddr="172.30.0.20:41274" http.request.uri="/v2/busybox/blobs/sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4"http.request.useragent="docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"instance.id=71df9a7e-0ec8-4522-8978-bbd01813541f service=registryvars.digest="sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4"vars.name=busybox version=v2.4.0
registry_1 
|time="2016-06-08T11:02:29.976514194Z" level=warning msg="errorauthorizing context: insufficient scope" go.version=go1.6.1http.request.host="172.30.0.20:5000"http.request.id=2aed3a1d-8bd2-4b4a-9507-9aa01f76d009 http.request.method=HEADhttp.request.remoteaddr="172.30.0.20:41274"http.request.uri="/v2/busybox/blobs/sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4"http.request.useragent="docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"instance.id=71df9a7e-0ec8-4522-8978-bbd01813541f service=registryvars.digest="sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4"vars.name=busybox version=v2.4.0
registry_1 
| 172.30.0.20 - -[08/Jun/2016:11:02:29 +0000] "HEAD/v2/busybox/blobs/sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4HTTP/1.1" 401 139 "" "docker/1.10.3-cs3 go/go1.5.4git-commit/6df5588 kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"
proxy_1    
| 54.172.254.196 - -[08/Jun/2016:11:02:29 +0000] "GET/service/token?scope=repository%3Abusybox%3Apush%2Cpull&service=token-serviceHTTP/1.1" 200 1157 "-" "docker/1.10.3-cs3 go/go1.5.4git-commit/6df5588 kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"


3. 解决
a)
先 登录
docker login -u admin -p Harbor12345 -e sample_admin@mydomain.com  172.30.0.20:5000
[root@ip-172-30-0-20 ~]# docker login -u admin -p Harbor12345 -esample_admin@mydomain.com 172.30.0.20:5000
WARNING: login credentials saved in /root/.docker/config.json
Login Succeeded
[root@ip-172-30-0-20 ~]#

b)
文件内容
        "auths": {
               
"172.30.0.20:5000": {
                       
"auth":"YWRtaW46SGFyYm9yMTIzNDU=",
                       
"email": "sample_admin@mydomain.com"
               
}
       
}
}

c)
服务器端输出
registry_1  |time="2016-06-08T11:08:27.101055472Z" level=debugmsg="authorizing request" go.version=go1.6.1http.request.host="172.30.0.20:5000"http.request.id=4fb2a7ec-9446-4e09-8c13-5fb71f091261 http.request.method=GEThttp.request.remoteaddr="172.30.0.20:41278"http.request.uri="/v2/"http.request.useragent="docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"instance.id=71df9a7e-0ec8-4522-8978-bbd01813541f service=registryversion=v2.4.0
registry_1 
|time="2016-06-08T11:08:27.101137779Z" level=warning msg="errorauthorizing context: authorization token required" go.version=go1.6.1http.request.host="172.30.0.20:5000"http.request.id=4fb2a7ec-9446-4e09-8c13-5fb71f091261 http.request.method=GEThttp.request.remoteaddr="172.30.0.20:41278"http.request.uri="/v2/"http.request.useragent="docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"instance.id=71df9a7e-0ec8-4522-8978-bbd01813541f service=registryversion=v2.4.0
registry_1 
| 172.30.0.20 - -[08/Jun/2016:11:08:27 +0000] "GET /v2/ HTTP/1.1" 401 87 """docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"
ui_1       
| 2016-06-08T11:08:27Z [INFO]request url: /service/token?account=admin&service=token-service
ui_1       
| 2016-06-08T11:08:27Z[DEBUG] [authenticator.go:52]: Current AUTH_MODE is db_auth
ui_1       
| 2016-06-08T11:08:27Z[DEBUG] [authutils.go:42]: scopes: []
ui_1        | 2016/06/08 11:08:27[router.go:828][D] | GET        |/service/token                          | 29.821542ms      | match      | /service/token                           
|
registry_1 
|time="2016-06-08T11:08:27.137128678Z" level=debugmsg="authorizing request" go.version=go1.6.1http.request.host="172.30.0.20:5000"http.request.id=6a912eb4-3932-43fe-bdff-6e84c45d70a4 http.request.method=GEThttp.request.remoteaddr="172.30.0.20:41281"http.request.uri="/v2/"http.request.useragent="docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"instance.id=71df9a7e-0ec8-4522-8978-bbd01813541f service=registry version=v2.4.0
registry_1 
|time="2016-06-08T11:08:27.13791445Z" level=info msg="responsecompleted" go.version=go1.6.1http.request.host="172.30.0.20:5000"http.request.id=6a912eb4-3932-43fe-bdff-6e84c45d70a4 http.request.method=GEThttp.request.remoteaddr="172.30.0.20:41281" http.request.uri="/v2/"http.request.useragent="docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"http.response.contenttype="application/json; charset=utf-8"http.response.duration=1.934938ms http.response.status=200http.response.written=2 instance.id=71df9a7e-0ec8-4522-8978-bbd01813541fservice=registry version=v2.4.0
registry_1 
| 172.30.0.20 - -[08/Jun/2016:11:08:27 +0000] "GET /v2/ HTTP/1.1" 200 2 """docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588 kernel/3.10.0-327.el7.x86_64os/linux arch/amd64"
proxy_1    
| 54.172.254.196 - admin[08/Jun/2016:11:08:27 +0000] "GET/service/token?account=admin&service=token-service HTTP/1.1" 200 1099"-" "docker/1.10.3-cs3 go/go1.5.4 git-commit/6df5588kernel/3.10.0-327.el7.x86_64 os/linux arch/amd64"



d)
上传 image客户端
[root@ip-172-30-0-20 ~]# docker tag busybox 172.30.0.20:5000/library/my

[root@ip-172-30-0-20 ~]# docker push 172.30.0.20:5000/library/my
The push refers to a repository [172.30.0.20:5000/library/my]
5f70bf18a086: Pushed
1834950e52ce: Pushed
latest: digest:sha256:6757d4b17cd75742fc3b1fc1a8d02b45b637f2ac913ee9669f5c2aed0c9b26ba size:711
[root@ip-172-30-0-20 ~]#

e)
服务器端输出 (部分)
。。。。。。。。
ui_1        | 2016/06/08 11:30:57[router.go:828][D] | POST       |/service/notifications                  | 190.034µs        | match      | /service/notifications                   |
ui_1        | 2016/06/08 11:30:57[router.go:828][D] | POST       |/service/notifications                  | 129.273µs        | match      | /service/notifications                  
| ))

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

harbor 中 使用 push 上传镜像时候 显示 没有认证 的相关文章

  • awk 子串单个字符

    这是columns txt aaa bbb 3 ccc ddd 2 eee fff 1 3 3 g 3 hhh i jjj 3 kkk ll 3 mm nn oo 3 我可以找到第二列以 b 开头的行 awk if substr 2 1 1
  • 是否可以在Linux上将C转换为asm而不链接libc?

    测试平台为Linux 32位 但也欢迎 Windows 32 位上的某些解决方案 这是一个c代码片段 int a 0 printf d n a 如果我使用 gcc 生成汇编代码 gcc S test c 然后我会得到 movl 0 28 e
  • 无法加载 JavaHL 库。- linux/eclipse

    在尝试安装 Subversion 插件时 当 Eclipse 启动时出现此错误 Failed to load JavaHL Library These are the errors that were encountered no libs
  • Linux 中的无缓冲 I/O

    我正在写入大量的数据 这些数据数周内都不会再次读取 由于我的程序运行 机器上的可用内存量 显示为 空闲 或 顶部 很快下降 我的内存量应用程序使用量不会增加 其他进程使用的内存量也不会增加 这让我相信内存正在被文件系统缓存消耗 因为我不打算
  • Docker 中的 Web api 无法连接到主机上的 SQL Server,并出现登录前握手错误

    首先有一些类似的问题 但我已经尝试了我能找到的所有建议 但似乎没有任何效果 如果你能找到我没有提到的 请评论 我会尝试一下 概要是我正在尝试将 Docker 容器中的 NET Core 3 1 Web api 连接到主机上的 SQL Ser
  • 使用 grep 查找包含所有搜索字符串的行

    我有一个文件 其中包含很多与此类似的行 id 2796 some model Profile message type MODEL SAVE fields account 14 address null modification times
  • 在docker中,存储驱动程序和支持文件系统有何不同?

    The docker info命令列出两个存储驱动程序 例如设备映射器和支持文件系统 例如XFS 这两个属性的含义是什么 它们有何不同 存储驱动程序 是docker用来管理存储的软件组件 这可能是其中之一overlay驱动程序 它使用ove
  • Logrotate - nginx 日志不在 docker 容器内旋转

    我有一个运行 nginx 的 docker 容器 它正在将日志写入 var log nginxLogrotate 安装在 docker 容器中 并且 nginx 的 logrotate 配置文件已正确设置 尽管如此 logrotate 仍不
  • 如何禁用 GNOME 桌面屏幕锁定? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何阻止 GNOME 桌面在几分钟空闲时间后锁定屏幕 我已经尝试过官方手册了在红帽 https access redhat com doc
  • nginx 上的多个网站和可用网站

    通过 nginx 的基本安装 您的sites available文件夹只有一个文件 default 怎么样sites available文件夹的工作原理以及如何使用它来托管多个 单独的 网站 只是为了添加另一种方法 您可以为您托管的每个虚拟
  • 从多个开发机器管理远程 docker 机器

    可以从另一个工作站管理使用 docker machine 命令从一个开发人员工作站创建的 docker 机器吗 我不是在寻找涉及 docker swarm 的解决方案 而只是寻找涉及 docker machine 的解决方案 据我了解 当
  • 为什么 Linux perf 使用事件 l1d.replacement 来处理 x86 上的“L1 dcache misses”?

    在英特尔 x86 上 Linux用途 https stackoverflow com a 52172985 149138事件l1d replacements来实施其L1 dcache load misses event 该事件定义如下 计数
  • Linux中的CONFIG_OF是什么?

    我看到它在很多地方被广泛使用 但不明白在什么场景下我需要使用它 What is 配置 OF OF 的全名是什么 打开固件 这是很久以前发明的 当时苹果公司正在生产基于 PowerPC CPU 的笔记本电脑 而 Sun Microsystem
  • 无法从 jenkins 作为后台进程运行 nohup 命令

    更新 根据下面的讨论 我编辑了我的答案以获得更准确的描述 我正在尝试从詹金斯运行 nohup 命令 完整的命令是 nohup java jar home jar server process 0 35 jar prod gt gt var
  • 使用 Docker 在本地主机上的“requests”连接错误

    我正在尝试开发客户端服务器应用程序 但遇到了一些问题 我的两个服务都是在单独的 docker 容器中本地开发的 客户端使用 api 从 api 获取数据requestspython 库 它可以在生产中使用 但在本地 我无法使用 reques
  • MySQL集群启动失败

    这不是我第一次创建ndbcluster 但我没有收到这样的问题 我正在关注本手册 https hub docker com r mysql mysql cluster by mysql团队 我正在使用回显的默认配置在此 GitHub 存储库
  • 所有平台上的java

    如果您想用 java 为 Windows Mac 和 Linux 编写桌面应用程序 那么所有这些代码都相同吗 您只需更改 GUI 即可使 Windows 应用程序更像 Windows 等等 如果不深入细节 它是如何工作的 Java 的卖点之
  • 如何有效截断文件头?

    大家都知道truncate file size 函数 通过截断文件尾部将文件大小更改为给定大小 但是如何做同样的事情 只截断文件的尾部和头部呢 通常 您必须重写整个文件 最简单的方法是跳过前几个字节 将其他所有内容复制到临时文件中 并在完成
  • 如何判断我是否通过脚本登录到私有 Docker 注册表?

    如何判断我是否通过脚本登录到私有 Docker 注册表服务器 换句话说 有docker login some registry com已成功运行 并且仍然有效 注意 我问的是任意私有注册表 而不是docker io注册表 如果 docker
  • 添加要在给定命令中运行的 .env 变量

    我有一个 env 文件 其中包含如下变量 HELLO world SOMETHING nothing 前几天我发现了这个很棒的脚本 它将这些变量放入当前会话中 所以当我运行这样的东西时 cat env grep v xargs node t

随机推荐

  • 四十七.快速排序C语言实现

    include
  • vim命令模式操作

    问题 以下所有操作都在命令模式进行 把 etc passwd文件 拷贝到 opt命名为nsd txt 对 opt nsd txt进行如下操作 切换到最后一行 切换到第一行 删除第二行 复制第一行到最后一行 查找root字符串 方案 本题主要
  • QRadioButton 选中/取消选中

    QRadioButton 选中的方法比较简单 ui gt radioButton gt setChecked true 取消选中怎么办 如果单纯使用 ui gt radioButton gt setChecked false 你会发现 然并
  • 写一个个人认为比较详细的adaboost算法

    最近在看机器学习中adaboost adaptive boostint 算法部分的内容 在csdn上面查找一番发现 好像没有讲的特别的详尽的 当然可能是我人品不佳 所以没有找到 为了防止同样的事情发生在其他人的身上 所以就写了这篇博文 尽量
  • 城堡争霸服务器维护,城堡争霸 - 阵营守护神(国际服)无法连接服务器是什么原因...

    城堡争霸 阵营守护神 国际服 无法连接服务器是什么原因 相信大家在玩城堡争霸 阵营守护神 国际服 的过程中 经常会遇到这样的问题 下面ourplay小编就简单为大家介绍几种常见的解决方案 城堡争霸 阵营守护神 国际服 游戏简介 城堡争霸 阵
  • Mac安装zmap

    安装 zmap官网地址 https github com zmap zmap brew install zmap 然后就可以试一下调用 zmap h 如果无法提示zmap 导入路径即可 echo export PATH PATH usr l
  • MATLAB中深度学习的多级神经网络构建

    创建一个简单的有向无环图 DAG 网络用于深度学习 训练网络对数字图像进行分类 layers imageInputLayer 28 28 1 Name input convolution2dLayer 5 16 Padding same N
  • python 数据全部显示,去掉中间省略号的终极办法

    data describe T 因为有省略号所以不能显示全 试了很多方法都不好用 包括 import numpy as np np set printoptions threshold np inf import pandas as pd
  • 推荐几个可以写到简历上的Go方向优质开源项目(需花点心思研究)

    前言 哈喽 大家好 我是asong 最近总有读者问我有没有Go语言方向优质的开源项目 可以写在简历上那种 一时还真想不起来 花了两天时间调研了一下 针对有无工作经验的分别推荐几个开源项目 下面我们一起来看一下 无工作经验 对于还在上学的朋友
  • java中怎么从一个数组中截取一定长度的元素放到新数组中

    可以直接用Arrays的静态方法copyOfRange int original int from int to 下面是一个简单的演示程序 1 2 3 4 5 6 7 8 9 10
  • mysql Navicat12约束条件的设置和详解

    文章目录 一 什么是mysql约束条件 1 1 说明 1 2 约束的分类 二 Navicat对应约束的设置位置 2 1 not null 非空约束 primary key 主建约束 default 默认约束 2 2 unique 唯一 2
  • OpenBSD 加速 下载安装

    OpenBSD 安装后需要安装其它软件时候 发现它要自动下载源文件 要不就手动下载 反正就是慢 我发现有个方法可以加快自动安装时候的下载 su root cat gt gt etc mk conf DISTDIR usr files dis
  • 字符串一次编辑

    一次编辑 字符串有三种编辑操作 插入一个字符 删除一个字符或者替换一个字符 给定两个字符串 编写一个函数判定它们是否只需要一次 或者零次 编辑 作者 LeetCode Solution 链接 https leetcode cn proble
  • linux搭建ftp

    ftp一些概念了解 Linux安装vsftpd及配置详解 1 安装 yum y install vsftpd 2 FTP主动模式与FTP被动模式 3 防火墙开启21端口 文中是使用iptables开启的 现在centos7 2版本默认是防火
  • 对el-form-item中的子组件进行必填验证(方法)

    效果图 思路 在el form item中添加show message属性 每次修改子组件值时 对其进行判断修改 部分代码
  • 光通量,光强,亮度,照度

    1 光通量 F 单位时间通过的光量 单位 流明 lm 2 发光强度 光强 I 单位立体角的光通量 I F 单位 坎德拉 cd 3 亮度 L 单位面积光强 L I S sin 单位 坎德拉 平米 cd 4 照度 E 单位面积接受的光通量 E
  • 固定分区存储空间的分配和回收Java代码实现

    目录 一 实验要求 二 实验目的 三 源代码 四 实验结果 五 实验总结 一 实验要求 实现固定分区存储管理方式下存储空间的分配和回收 已知当前内存分配表如下 分区号 起始地址 长度 状态 1 10KB 30KB Job5 2 40KB 7
  • 已知一个整数,如何判断这个整数是无符号的?

    前言 记录6月11日 肯哥在群里面分享的一个问题 说实话 看到题目想了半天没明白 一看答案 才发现 这题真的简单 题目 已知一个整数 如何判断这个整数是无符号的 题解 1 因为我的思路完全是错误的 我就不再此进行乱分析了 肯哥给出的提示是
  • 多维时序

    多维时序 MATLAB实现基于贝叶斯线性回归 Bayesian Regression 的多变量输入回归预测 目录 多维时序 MATLAB实现基于贝叶斯线性回归 Bayesian Regression 的多变量输入回归预测 预测效果 基本介绍
  • harbor 中 使用 push 上传镜像时候 显示 没有认证

    harbor 中 使用 upload 上传镜像时候 显示 没有认证 概述 VMware harbor 安装完成后 使用docker tag 打新的标签 然后 用docker push上传镜像的时候 显示 安全方面的错误 1 客户端显示信息