
# 为什么通过页面上传镜像失败？
SWR对镜像的命名和地址有严格的规范。如果镜像的命名不规范或镜像地址不规范都会导致镜像上传失败。
#### 镜像格式不合法或鉴权失败
**问题现象**：通过页面上传镜像，出现"镜像格式不合法"或"鉴权失败"的报错。
**问题原因**：
- 上传时长超过15分钟，前端token过了有效期。
- 不支持上传Open Container Initiative（OCI）规范（v1.0 和 v1.1）的镜像。
- 镜像地址不规范，导致上传失败。 镜像地址各个部分的含义如下，最后的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字段的值是否符合上述规范。
  ![](https://support.huaweicloud.com/swr_faq/zh-cn_image_0000001142090150.png "点击放大")
  
**解决方法**：
- 针对token过期的场景，建议使用[容器引擎客户端](https://support.huaweicloud.com/usermanual-swr/swr_01_0011.html#section3)进行上传。
- 基础版SWR不支持OCI格式的镜像。请使用SWR企业版通过客户端形式上传。
- 针对镜像地址不规范的场景，请按照命名规范，重新给镜像打tag，然后使用docker save命令保存镜像，然后再使用页面上传。
![](https://support.huaweicloud.com/swr_faq/public_sys-resources/notice_3.0-zh-cn.png)
SWR判定镜像名是否合法不是以用户在界面上传镜像时的文件名为依据，而是依据镜像包中的repositories和manifest.json文件。
#### 一直卡在上传界面直到超时
**问题现象**：通过页面上传镜像，一直卡在上传界面直到超时。
**问题原因**：
- 镜像命名不规范，导致上传失败。
- 页面上传走公网链路，可能会因为网络不稳定导致传输异常。
**解决方法**：
- 您可以按照镜像命名规范修改镜像名称后，重新上传镜像。
- 建议更换网络环境，或者通过容器引擎客户端上传。
 
#### 不允许用户上传镜像
**问题现象**：使用页面上传镜像，报如下所示错误：
"Not allow to login、upload or download image"
**问题原因**：用户大批量并发上传镜像或者攻击服务，系统把用户拉黑，用户无法登录和上传下载镜像。
**解决方法** ：
- 请在30分钟之后重新尝试。
- 通过提工单的形式，由运维工程师进行处理。
 
#### 超过可上传镜像配额
单租户上传镜像数量受配额限制，包括镜像配额和镜像版本配额。超过镜像配额之后再上传镜像会失败，分为以下两种场景。
![](https://support.huaweicloud.com/swr_faq/public_sys-resources/note_3.0-zh-cn.png)
- 如果上传的镜像达到配额，不能上传新的镜像，但是存量镜像如果镜像版本没有超过配额仍可继续上传。

- 如果上传的某个镜像版本达到配额，则该镜像不能继续上传，其他镜像不受影响。
 
此时可对不再使用的镜像执行[镜像老化](https://support.huaweicloud.com/usermanual-swr/swr_01_0102.html)，之后再重新上传，也可以[提交工单](https://console.huaweicloud.com/ticket/?&locale=zh-cn#/ticketindex/createIndex)申请增加配额。
默认配额如下：
- **镜像配额：** **500个。**

- **镜像版本：300** **个** **。**
 
