All Projects → AliyunContainerService → Sync Repo

AliyunContainerService / Sync Repo

Synchronize images from gcr.io, quay.io and Docker Hub to your Docker registry

Programming Languages

python
139335 projects - #7 most used programming language

Docker Registry Synchronizer

This helper project will synchronize Docker image from popular public Docker Registry services to your own registry.

  • Support gcr.io, quay.io and Docker Hub
  • Support public source image from above registry services only
  • Sync the tagged images from given repo updated within 15 days (default)

NOTE: The project supports both Python2 and Python3

Prerequisite

pip install docker[tls]
pip install python-dateutil

Editing image lists

Edit the images.txt of the image repositories for syncing

quay.io/coreos/prometheus-operator=registry.cn-hangzhou.aliyuncs.com/coreos_containers/prometheus-operator
gcr.io/google_containers/pause-amd64

Each line will be one repo definition

source_repo=target_repo Sync the source repo to specific target repo

or

source_repo Sync the source repo to default target repo, which is using default registry, namespace and the same name of the source repo.

In case to sync private repos of aliyun registry cross regions, you have to configure your aliyun cli before you get start, pls refer to aliyun-cli

registry.cn-hangzhou.aliyuncs.com/eric-dev/debug=registry.ap-southeast-1.aliyuncs.com/eric-dev/debug

Usage

Help

python sync_images.py -h|--help

Synchronize images from the configuraiton files, by default "images.txt"

python sync_images.py

Other optional arguments

-f|--file <image_list_file>
-r|--registry <host:port> Default "registry.cn-hangzhou.aliyuncs.com"
-n|--namespace <namespace> Default "google_containers"
-d|--days <days> Default 15

Remove out-of-date images

You can run the following command to remove the images created more than 30 days (720h) ago:

docker image prune -a --force --filter "until=720h"
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].