GenStudio 全新上架 ComfyUI 工作流托管服务GenStudio 全新上架 ComfyUI 工作流托管服务 ,已适配主流 ckpt 模型与节点了解更多
Skip to content

迁移外部镜像至租户镜像仓库

本文描述如何借助启用「Docker 容器」功能的开发机,将用户已有镜像迁移到智算云平台的镜像中心。

迁移的主要流程:

  1. 创建启用「Docker 容器」功能的开发机。
  2. 在开发机上准备用户镜像,可上传镜像文件开发机,或从指定的外部镜像仓库拉取到开发机。
  3. 推送到租户镜像仓库。

前提条件

  • 租户镜像仓库:租户购买预付费资源(包两年/包年/包月/包日)后,可获得私有的租户镜像仓库。
  • 开发机依赖 sudossh 等基础组件,如果您的自定义镜像中缺乏必要依赖,可能无法用于运行开发机。

Step 0 创建开发机

创建开发机,并打开「Docker 容器」功能。

alt text

如需帮助,参见 Docker 功能

Step 1 准备待迁移镜像

如果已有镜像 tar 包,可考虑以下步骤本地传输镜像文件至在开发机或共享存储中:

也可考虑直接从外部镜像仓库拉取到开发机,要求外部镜像仓库支持公网访问。

Step 2 推送至租户镜像仓库

登录打开了 Docker 容器功能的开发机(开发机会默认登录您租户的镜像仓库),按照以下步骤操作:

  1. 如果要将 Docker 镜像 tar 包推送到镜像仓库,需要先加载镜像。使用 docker load 命令加载镜像:

    bash
    docker load -i <image_name>.tar
  2. 标记镜像: 镜像需要标记仓库路径(查看镜像仓库地址)和标签,请使用 docker tag

    格式:

    bash
    docker tag <loaded_image_name>:<version> <repository>/<image_name>:<version>

    示例:

    bash
    docker tag sd-webui:v1.1-1 cr.infini-ai.com/te-d397fngp1xye2h3q/sd-webui:v1.1-1
  3. 推送镜像: 使用 docker push 将镜像推送到仓库:

    格式:

    bash
    # 开发机内默认登录租户镜像,无需再次 docker login
    docker push <repository>/<image_name>:<version>

    示例:

    bash
    docker push cr.infini-ai.com/te-d397fngp1xye2h3q/sd-webui:v1.1-1

Step 3 查看结果

构建完成后,您可以访问镜像中心,在自定义镜像标签页中查看您的镜像。

NOTE

如果您所属租户在不同可用区均购买了资源,请注意租户在不同可用区的镜像仓库的存储网络相互隔离,暂不支持同步(但共用同一个内网地址)。例如,可用区 A 向 cr.infini-ai.com/te-b914754427352251 推送镜像,平台自动映射到可用区 A 的镜像仓库,可用区 B 无法使用该镜像。