# imageSync **Repository Path**: tayooc/imageSync ## Basic Information - **Project Name**: imageSync - **Description**: 1234567890 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-06-14 - **Last Updated**: 2022-12-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 命令行工具:imageSync ### 作用: - 拉取海外的镜像(比如k8s需要的一些镜像)到本地 - 再把本地的镜像推动到自己指定的仓库中 ### 工作机制: 借用了本地`docker daemon`中配置的`registry-mirrors`的加速功能,当我们利用`registry-mirrors`列表中的加速源,加速的把一些很难下载的镜像下载到本地后;该工具再自动化的把这个镜像推送到您云端(自己的私有镜像仓库中)保存起来。 该命令的作用就是自动化处理了这个过程中的琐事,实现一键全自动化的`拉取->推送` > 这里列举一些加速比较好的镜像仓库: ```bash https://hub-mirror.c.163.com https://mirror.baidubce.com http://f1361db2.m.daocloud.io ```

### 使用教程: ##### 安装 (明天在写...)
##### 使用 执行如下命令,会在用户家目录中生成一个名为`.imageSync`的配置文件,然后大家取修改一下该文件中的账号密码信息即可进行后续的使用。 ```bash imageSync init ``` > 这个命令不用多次执行(每一次执行都会重新覆盖为初始状态) `~/.imageSync`文件内容如下: ```json { "username": "admin", "password": "123456", "server_address": "registry.cn-shanghai.aliyuncs.com", "image_tag": "registry.cn-shanghai.aliyuncs.com/tay3223/images" } ``` - username: 您(私有镜像仓库)的账号 - password: 您(私有镜像仓库)的密码 - server_address: 您(私有镜像仓库)的登录域名 - image_tag: 当您把镜像向私有仓库推送时,需要打上的Tag前缀

上面这几个参数信息,与我们平时使用命令行的`docker login`命令时所用到的概念是一样的。过去我们使用`docker login`或者`docker push`时,需要用到`账号、密码、域名、tag`等等,此处也是使用的这些内容。
> 不过`imageSync`命令比较方便一些,只需要在家目录配置文件(~/.imageSync)中配置一次。 随后就可以随意使用命令行工具imageSync进行对镜像的快速操作了。
```bash 这里借用阿里云的一部分文档来演示说明一下: (原文)将镜像推送到阿里云Registry中时: $ docker login --username=**** registry.cn-shanghai.aliyuncs.com $ docker tag [ImageId] registry.cn-shanghai.aliyuncs.com/tay3223/images:[镜像版本号] $ docker push registry.cn-shanghai.aliyuncs.com/tay3223/images:[镜像版本号] ``` 这里可以看到使用docker原生命令来进行镜像操作时,也是需要这四类信息,只不过我这里时把它变成落地到配置文件中了。

> 疫情封闭时随手写的项目,有很多地方不是很完善,如果对这个小工具感觉有意思,想一起延展性开发点小功能的,欢迎随时联系作者。 (全文完)