Updated on 2024-05-09 GMT+08:00

Pushing an Image

How Do I Push an Image to SWR by Calling APIs?

Currently, SWR does not provide APIs for image push. You can push images using the docker push command on a client or using the SWR console.

Why Is an Image Pushed Using a Container Engine Client to SWR Different in Size From One Uploaded Through the SWR Console?

Symptom

Assume that a nginx image of v2.0.0 is created on the local Docker client. The docker images command is run to query SIZE of the image. The size is 22.8 MB.

$ docker images
REPOSITORY                         TAG             IMAGE ID       CREATED         SIZE
nginx                              v2.0.0          22f2bf2e2b4f   9 days ago      22.8MB
  1. Run the docker push command to upload the image to SWR. The size of the image is 9.5 MB.
  2. On the local Docker client, pack the image into a .tar package. Download the nginx.tar package to the local host, and upload the package to SWR. The size of the package is 23.2 MB.

The size of the image pushed through the client is different from that of the image uploaded through the SWR console.

Cause Analysis

Image layers are compressed into TGZ packages when images are pushed to SWR using a container engine client, whereas when they are uploaded through the SWR console, they are only packed without being compressed. Therefore, the same image will be of different sizes when it is uploaded in these two different ways.

Can I Push Arm-based Container Images to SWR?

SWR has no restriction on the kernel architecture of images. There is no difference between pushing an Arm-based image and an x86-based image to SWR.

What Protocol Is Used to Push Images to SWR When I Run the docker push Command?

HTTPS is used.

Will an Image Be Overwritten If I Push an Image That Have the Same Name and Tag with it?

Yes, the original image will be overwritten.

What Is the Maximum Size of an SWR Layer?

If you use the container engine client to push images to SWR, each image layer cannot exceed 10 GB.

What Is the Rate Limit for a Tenant to Push Images over the Internet?

To avoid mutual interference between tenants when they push SWR images, the image push traffic for a single tenant is limited to 20 QPS. The traffic exceeding this value will be blocked. In this case, Docker will receive 503 and automatically retry traffic control requests.

Does SWR Support Resumable Image Push?

No.