镜像上传
如何通过API上传镜像到SWR?
SWR暂时没有开放镜像上传的API,您可以使用docker push或页面方式上传镜像。
为什么通过客户端上传和页面上传的镜像大小不一样?
问题描述
假设在本地Docker客户端上制作了一个nginx镜像,版本号为v2.0.0,使用docker images命令查询SIZE为22.8MB:
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE nginx v2.0.0 22f2bf2e2b4f 9 days ago 22.8MB
- 通过客户端(即执行docker push命令)上传该镜像至SWR镜像仓库,查询大小为9.5MB。
- 在本地Docker客户端将镜像打包为tar格式,将nginx.tar下载至本地后,通过页面方式上传至SWR镜像仓库,查询大小为23.2MB。
可以发现,通过客户端和页面上传的镜像大小不一样。
原因分析
使用客户端上传的镜像每一层layer都进行了tgz压缩,而页面上传的镜像包是经过docker打包的,每一层layer只进行了打包,没有压缩。所以两种方式上传的镜像大小显示会不一致。
SWR镜像仓库支持ARM镜像上传么?
SWR镜像仓库对镜像的内核架构是没有任何限制的,您上传ARM架构的镜像和上传x86的镜像是没有区别的,直接上传即可。
docker push使用什么协议将镜像推送到SWR?
HTTPS协议。
同名同tag的镜像上传后会覆盖之前的镜像吗?
会覆盖,保留最新上传的镜像。
SWR单个layer的最大限制是多少?
使用客户端向SWR上传镜像,镜像的每个layer大小不能超过10G。
SWR公网上传单租户流控限制是多少?
为了确保SWR镜像上传租户间不会互相影响,当前对单个租户流控为镜像层上传20QPS,超过后会被限流,docker会收到503并会自动重试限流拦截的请求。
SWR支持断点续传镜像文件吗?
暂不支持。