logo
397
21
Login

Docker 镜像同步工具

一个基于 Skopeo 的 Docker 镜像同步工具,支持多架构镜像的批量同步和转换。

🚀 功能特性

  • 多架构支持 - 支持 amd64、arm64、arm、386、ppc64le、s390x、mips64le 等架构
  • 智能架构检测 - 自动检测源镜像支持的架构,避免无效同步
  • 灵活同步模式 - 支持指定架构的精确同步
  • 安全策略 - 内置 insecure-policy 支持,适配各种镜像仓库
  • 错误处理 - 完善的错误检测和提示机制
  • 自定义镜像 - 提供定制化的 Skopeo 运行环境

📋 项目结构

docker-images-chrom/ ├── docker-build.sh # 主要的镜像同步脚本 ├── Dockerfile # 定制的 Skopeo 镜像构建文件 ├── .cnb.yml # 流水线配置文件 ├── .cnb/ # 流水线触发器配置 │ ├── web_trigger.yml │ └── api_trigger.yml └── README.md # 项目文档

🛠️ 使用方法

基本用法

CNB 中手动触发构建

image-20250821145750586

image-20250821145833545

chrome 浏览器触发构建

image-20250821145912263

issue 触发构建

issue列表页面,选择创建issue,使用镜像同步模板,填写镜像地址和目标架构,点击提交,即可触发构建,构建结果和进度可直接在你提交的issue下查看。

参数说明

  • IMAGE_URL: 源镜像地址(必需)
  • ARCH: 目标架构,可选值:
    • amd64 - x86 64位架构
    • arm64 - ARM 64位架构
    • riscv64 - RISC-V 64位架构
    • ppc64le - PowerPC 64位小端架构
    • s390x - IBM System z 架构
    • mips64le - MIPS 64位小端架构
    • loong64 - LoongArch 64位架构

🔧 功能详解

架构检测机制

脚本会自动检测源镜像支持的架构:

  1. 使用 skopeo inspect --raw 获取镜像 manifest
  2. 解析多架构镜像的平台信息
  3. 过滤无效架构值(如 unknownnull
  4. 验证目标架构是否在支持列表中

同步流程

📄 许可证

本项目采用 MIT 许可证。

🤝 贡献

欢迎提交 Issue 和 Pull Request 来改进这个项目!

🙏 致谢

感谢 CNB 平台的桥接支持 🙏


About

一个基于 Skopeo 的 Docker 镜像同步工具,支持多架构镜像的批量同步和转换。支持 CNB 手动触发构建 。支持通过 chrom 浏览器插件触发构建【https://cnb.cool/yuwen-gueen/cnb-chrome-assistant】

dockerchrom插件镜像同步工具skopeo