Docker is a containerized application platform that does not provide image hosting capabilities. You can push Docker images to image repositories of Container Registry Personal Edition instances to use basic Container Registry features and image hosting capabilities. Other users can also pull your Docker images from the image repositories of your Container Registry Personal Edition instances.
Prerequisites
Docker is installed on the Container Registry Personal Edition instance on which you want to push and pull images. For more information, see Install and use Docker on a Linux instance.
A source code hosting platform is bound to the Container Registry Personal Edition instance on which you want to push and pull images, or an image is built on an on-premises device. For more information, see Bind a source code hosting platform and Build and push a multi-arch image on an on-premises device to a Container Registry Enterprise Edition instance.
Step 1: Obtain the username that you can use to log on to the Container Registry Personal Edition instance
If you use an Alibaba Cloud account, the name of the Alibaba Cloud account is the username that you use to log on to the Container Registry Personal Edition instance.
If you use a Resource Access Management (RAM) user, the string before aliyundoc.com is the username that you use to log on to the Container Registry Personal Edition instance. For example, if the name of your RAM user is 28768383240243****@aliyundoc.com, the username that you use to log on to the Container Registry Personal Edition instance is 28768383240243****.
Step 2: Set a password that you can use to log on to the Container Registry Personal Edition instance
The first time you log on to the Container Registry console, you must set a logon password for your Container Registry Personal Edition instance to facilitate image uploads and downloads.
If you log on by using an Alibaba Cloud account, you must set a logon password.
If you log on by using a RAM role, you must call the necessary operation to query a temporary account and password. For more information, see GetAuthorizationToken.
Log on to the Container Registry console.
Click Reset Docker Login Password.
NoteIf you forget the password, you can use an access credential to reset the password.
In the Reset Docker Login Password dialog box, configure the Password and Confirm Password parameters and click Confirm.
Step 3: Create a namespace
You can manage a collection of repositories in a namespace. For example, you can manage permissions on repositories and modify repository attributes in a namespace.
Log on to the Container Registry console.
In the top navigation bar, select a region.
In the left-side navigation pane, click Instances.
On the Instances page, click the Personal Edition instance that you want to manage.
On the management page of the Container Registry Personal Edition instance, choose in the left-side navigation pane.
On the Namespace page, click Create Namespace.
In the Create Namespace dialog box, enter a name for the namespace and click Confirm.
Step 4: Create an image repository
Log on to the Container Registry console.
In the left-side navigation pane, click Instances.
On the Instances page, click the Personal Edition instance that you want to manage.
On the management page of the Container Registry Personal Edition instance, choose in the left-side navigation pane.
On the Repositories page, click Create Repository.
In the Repository Info step of the Create Repository wizard, configure the Namespace, Repository Name, Repository Type, Summary, and Description parameters, and then click Next.
NoteThe repository name must be 2 to 64 characters in length and can contain lowercase letters, digits, underscores (_), hyphens (-), and periods (.). The name cannot start or end with an underscore (_) or contain forward slashes (/).
In the Code Source step, configure the Code Source, Build Settings, and Build Rules parameters, and then click Create Repository.
Parameter
Description
Code Source
The code source.
ImportantBefore you select a code source, make sure that the instance is bound to a source code hosting platform. For more information, see Bind a source code hosting platform.
Build Settings
Automatically Build Images When Code Changes: The building rule is automatically triggered when code is committed from a branch.
Build with Servers Deployed Outside Chinese Mainland: Images are built in a data center outside the Chinese mainland and then pushed to the image repository in the specified region.
Build Without Cache: The system pulls the base image each time an image is to be built. This may slow down the building process.
Build Rules
After you create the image repository, go to the image building page to create image building rules. For more information, see Create a repository and build images.
Step 5: Push and pull an image
To continuously improve user experience and optimize resource management, Container Registry adjusted the creation process of Personal Edition instances. The access domain names of Container Registry Personal Edition instances of the new version are also changed. For more information, see Limits on Personal Edition instances of the new version. You can select image push and pull methods based on the version of your Container Registry Personal Edition instance.
Container Registry Personal Edition instance of the new version
Run the following command to log on to the Container Registry Personal Edition instance:
docker login --username=<Username that you use to log on to the Container Registry Personal Edition instance> crpi-xxxx.cn-<Region ID of the Container Registry Personal Edition instance>.personal.cr.aliyuncs.com
Enter the logon password that you set in Step 2: Set a password that you can use to log on to the Container Registry Personal Edition instance as prompted. If
login succeeded
is displayed, the logon is successful.Push an image.
Run the following command to tag the image:
docker tag <Image ID> crpi-xxxx.cn-<Region ID of the Container Registry Personal Edition instance>.personal.cr.aliyuncs.com/<Namespace name>/<Image repository name>:<Image tag>
Run the following command to push the image to the image repository on the Container Registry Personal Edition instance:
docker push crpi-xxxx.cn-<Region ID of the Container Registry Personal Edition instance>.personal.cr.aliyuncs.com/<Namespace name>/<Image repository name>:<Image tag>
On the Repositories page, click the name of the image repository. On the page that appears, click Tags. If the image name is displayed on the Tags page, the image is pushed to the image repository.
Run the following command to pull an image:
docker pull crpi-xxxx.cn-<Region ID of the Container Registry Personal Edition instance>.personal.cr.aliyuncs.com/<Namespace name>/<Image repository name>:<Image tag>
Run the
docker images
command. If the image name is displayed in the command output, the image is pulled from the image repository.
Container Registry Personal Edition instance of the old version
Run the following command to log on to the Container Registry Personal Edition instance:
docker login --username=<Username that you use to log on to the Container Registry Personal Edition instance> registry.cn-<Region ID of the Container Registry Personal Edition instance>.aliyuncs.com
Enter the logon password that you set in Step 2: Set a password that you can use to log on to the Container Registry Personal Edition instance as prompted. If
login succeeded
is displayed, the logon is successful.Push an image.
Run the following command to tag the image:
docker tag <Image ID> registry.cn-<Region ID of the Container Registry Personal Edition instance>.aliyuncs.com/<Namespace name>/<Image repository name>:<Image tag>
Run the following command to push the image to the image repository on the Container Registry Personal Edition instance:
docker push registry.cn-<Region ID of the Container Registry Personal Edition instance>.aliyuncs.com/<Namespace name>/<Image repository name>:<Image tag>
On the Repositories page, click the name of the image repository. On the page that appears, click Tags. If the image name is displayed on the Tags page, the image is pushed to the image repository.
Run the following command to pull an image:
docker pull registry.cn-<Region ID of the Container Registry Personal Edition instance>.aliyuncs.com/<Namespace name>/<Image repository name>:<Image tag>
Run the
docker images
command. If the image name is displayed in the command output, the image is pulled from the image repository.
What to do next
Delete multiple image tags at a time
Log on to the Container Registry console.
In the top navigation bar, select a region.
In the left-side navigation pane, click Instances.
On the Instances page, click the Personal Edition instance that you want to manage.
On the management page of the Container Registry Personal Edition instance, choose . On the Repositories page, click the name of the repository whose tags you want to delete.
On the details page of the repository, click Tags in the left-side navigation pane.
On the Tags page, select the tags that you want to delete and then click Batch Delete.
In the dialog box that appears, select I am sure to delete the images of these tags and then click OK.