容器镜像服务 SWR-为什么通过页面上传镜像失败?:镜像格式不合法或鉴权失败

时间:2025-03-03 11:13:38

镜像格式不合法或鉴权失败

问题现象:通过页面上传镜像,出现“镜像格式不合法”或“鉴权失败”的报错。

问题原因

  1. 上传时长超过15分钟,前端token过了有效期。
  2. 镜像地址不规范,导致上传失败。

    镜像地址各个部分的含义如下,最后的tag(版本号)可省略,如果省略则表示latest版本,其余部分均不可省略,且不可多余。

    样例:swr.regionid.*******.com/repo_namespace/repo_name:tag

    • swr.regionid.*******.com为 容器镜像服务 的镜像仓库地址。
    • repo_namespace为组织名称,命名正则表达式为^([a-z]+(?:(?:(?:_|__|[-]*)[a-z0-9]+)+)?)$,长度范围为:1-64。
    • repo_name:tag为镜像名称和版本号,镜像命名正则表达式为^([a-z0-9]+(?:(?:(?:_|__|[-]*)[a-z0-9]+)+)?)$,长度范围为:1-128。

    您可以将镜像解压,打开文件manifest.json文件查看RepoTags字段的值是否符合上述规范。

解决方法

  1. 针对token过期的场景,建议使用容器引擎客户端进行上传。
  2. 针对镜像地址不规范的场景,请按照命名规范,重新给镜像打tag,然后使用docker save命令保存镜像,然后再使用页面上传。

SWR判定镜像名是否合法不是以用户在界面上传镜像时的文件名为依据,而是依据镜像包中的repositories和manifest.json文件。

support.huaweicloud.com/swr_faq/swr_faq_0017.html