容器镜像服务 CCR | 大装置帮助中心
跳到主要内容

容器镜像服务 CCR

产品介绍​

什么是容器镜像服务​

容器镜像服务 CCR(Sensecore Cloud Container Registry)是支持容器镜像全生命周期管理的安全托管平台,提供易用可靠的镜像管理功能。

容器镜像服务是为容器镜像提供全生命周期管理的安全托管平台,提供易用但可靠的镜像管理能力,助力开发者以更灵活的方式进行 AI 任务的训练。

容器镜像服务主要具备以下功能:

  • 全生命周期管理

支持容器镜像的推送、拉取和清理等全生命周期的托管能力,可为镜像添加AI特性标签以便分类管理。

  • 多维度安全保障

支持内外网访问控制,镜像安全扫描等功能,保障数据安全及访问合规。

  • 细粒度权限管控

提供容器镜像隔离能力,细粒度权限管理,支持为不同用户分配相应的访问权限。

  • 无缝对接云产品

无缝对接弹性算力池(ACP)和云容器实例(CCI)等云产品,为AI训练和应用部署提供个性化能力支持。

产品优势​

容器镜像服务以安全可靠为前提,通过简易的流程操作,提供镜像托管服务。

  • 简单易用

将用户从搭建和运维镜像仓库等繁复工作中解放,只需关注业务本身,即可通过简易操作和流程享受极致的云服务体验。

  • 安全可靠

具备VPC和公网的网络访问控制,支持镜像安全扫描并提供多维度漏洞报告,保障用户业务安全。

应用场景​

镜像全生命周期管理

提供对镜像包括推送、拉取和同步的全生命周期管理能力,对AI应用落地过程中的所有镜像进行统一精细化管理。

  • 拥有全面的镜像权限管理体系,便于团队协作管理
  • 支持稳定快速的镜像上传、下载服务

AI开发训练

为AI开发者准备了常见的预置镜像,同时提供灵活的自定义能力适合特殊场景下的深度学习引擎和开发库需求。

  • 提供常见 AI 应用落地所需镜像,定期同步官方镜像最新版本
  • 与云产品无缝集成,快速上传自定义镜像用于开发训练或应用部署

计费说明​

容器镜像服务采取包年包月的计费方式,通过购买命名空间的容量进行收费。

资源类型规格属性计费方式
命名空间容量包年包月,购买时一次性付费(容量以GB为单位,购买时长以月和年为单位)

基本概念​

名词解释
容器一个通过容器镜像创建的运行实例,一个节点可运行多个容器。容器的实质是进程,但与直接在宿主机执行的进程不同,容器进程运行于属于自己的独立命名空间。
镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
容器镜像容器镜像是一种容器化标准交付物,用于打包应用程序及其依赖的环境。可以基于Dockerfile文件将应用构建为容器镜像并上传到镜像仓库,然后您可以在测试或者生产环境中拉取容器镜像并启动容器。
命名空间命名空间用于管理多个具有关联属性的镜像仓库,不直接存储容器镜像,可映射为企业内部的组织团队、产品项目或个人。

授权管理​

容器镜像服务拥有精细化的权限管理,您可以使用用户访问控制 IAM 为所需用户进行以下角色授权。通过角色授权可使团队内的其他用户拥有您创建命名空间的不同权限,以便进行团队合作。用户授权操作可参考【大装置帮助中心-新手引导-如何为用户授权】

角色名称角色说明角色权限
命名空间创建者可以创建命名空间ccr.namespace.create(创建)
命名空间所有者拥有命名空间的完全访问权限ccr.namespace.ownData(完全访问权限)、ccr.namespace.delete(删除)、ccr.namespace.setIamPolicy(授予权限)、ccr.namespace.operate(上传/拉取镜像)、ccr.namespace.deleteImage(删除镜像)、ccr.namespace.unsubscribe(退订)、ccr.namespace.unSetIamPolicy(移除权限)、ccr.namespace.renew(续订)
命名空间开发者拥有命名空间内镜像的操作权限,可进行镜像的上传、拉取和删除操作ccr.namespace.get(获取信息)、ccr.namespace.operate(上传/拉取镜像)、ccr.namespace.deleteImage(删除镜像)
命名空间镜像用户拥有容器镜像命名空间内镜像的操作权限,可进行镜像的上传、拉取操作。ccr.namespace.get(获取信息)、ccr.namespace.operate(上传/拉取镜像)

快速入门​

容器镜像服务是为容器镜像提供全生命周期管理的安全托管平台,提供易用但可靠的镜像管理能力,本文将介绍如何快速使用 CCR 推送和拉取镜像。

步骤一:创建命名空间​

  1. 登录容器镜像服务控制台。
  2. 在左侧导航栏,选择命名空间。
  3. 点击创建命名空间,完成基本信息的配置,即可购买命名空间。
  4. 当命名空间状态由创建中转变为运行中,即可正常使用。
参数类型参数参数说明
购买信息计费模式容器镜像服务提供包年包月的计费方式,可选择按年计费还是按月计费。
地区和可用区选择该命名空间创建的地区和可用区。
资源配置选择产品选择下单的产品,此为容器镜像服务。
访问级别选择命名空间的访问级别,分为私有和公开。
公开:公开命名空间下的所有镜像默认为公开镜像,所有人都可根据镜像地址进行拉取。
私有:私有命名空间下的所有镜像默认为私有镜像,只有对命名空间中镜像有拉取权限的用户才可拉取。
存储容量填写希望购买的容量数量
基本信息订阅和资源组选择资源所属的订阅和资源组。
命名空间名称填写命名空间的名称,支持小写英文字母、数字及短线“-”,小写英文开头,1-63个字符。

步骤二:推送拉取镜像​

容器镜像服务,支持通过docker、nerdctl等客户端登陆并进行镜像的推送、拉取。命名空间所有者、命名空间开发者等具备ccr.namespace.operate权限的用户,可以在通过客户端在对应命名空间中推送和拉取镜像。

点击镜像管理进入镜像列表,命令行操作需要在Docker客户端进行,请提前安装和配置Docker客户端。进入【镜像管理】模块,点击“客户端上传”,进入界面后在账号启用状态下,可复制以下命令。账号的启用、禁用,以及密码设定和重置,见客户端上传镜像。


请注意:镜像仓地址会根据环境不同发生变化,使用时可进入“客户端上传”界面以其提供的地址为准,以下地址仅供参考。
  1. 使用以下命令,登录容器镜像服务 Docker Registry,当显示login succeeded,表示登录成功。

    docker login registry.sensecore.cn --username [用户名]

  2. 使用以下命令为镜像打标签。

    docker tag [镜像名称:镜像版本] registry.sensecore.cn/[命名空间]/[镜像名称:镜像版本]

  3. 使用以下命令推送镜像。在镜像管理页面点击已上传的镜像名称进入版本管理,在版本管理页面可以看到推送的镜像和相关的版本名称、镜像大小、Digest 信息,说明推送镜像成功。

    docker push registry.sensecore.cn/[命名空间]/[镜像名称:镜像版本]

  4. 使用以上命令可拉取镜像。

    docker pull registry.sensecore.cn/[命名空间]/[镜像名称:镜像版本]

客户端上传3 客户端上传4

步骤三:添加标签​

  1. 登录容器镜像服务控制台。
  2. 在左侧导航栏,选择镜像管理。
  3. 在镜像管理页面点击添加标签按钮,即可自定义该镜像的个性化标签,添加完成后在高性能 AI 算力池、云容器实例和 云开发机创建资源实例和任务时均可用以筛选镜像。
列名含义
通用标签所属子产品与芯片类型为通用标签(必填项),您在高性能 AI 算力池、云容器实例和 云开发机等模块创建资源实例和任务时,会根据通用标签进行镜像的筛选,请正确选择标签内容以免无法选择到所需镜像
非通用标签非通用标签具有操作系统、驱动、开发语言、训练框架、加速库和模型算法等内容,可自由填写对应的标签值
系统标签系统标签为镜像来源,当镜像为用户在 CCR 中通过客户端上传则镜像来源为本地,当镜像为云开发机的镜像快照则镜像来源为快照,此标签为系统自动生成

操作指南​

命名空间​

管理命名空间​

应用场景

当您初次进入容器镜像服务后,需先以容量为规格购买命名空间资源,完成购买后即可在命名空间中托管镜像。

操作步骤

  1. 登录容器镜像服务控制台。
  2. 在左侧导航栏,选择命名空间。
  3. 点击创建命名空间,即可购买命名空间。
  4. 点击退订即可对未到期的命名空间进行退订。
  5. 点击续订即可对未释放的命名空间进行续订并正常使用。
参数类型参数参数说明
购买信息计费模式容器镜像服务提供包年包月的计费方式,可选择按年计费还是按月计费。
地区和可用区选择该命名空间创建的地区和可用区。
资源配置选择产品选择下单的产品,此为容器镜像服务。
访问等级选择命名空间的访问级别,分为私有和公开。
公开:公开命名空间下的所有镜像默认为公开镜像,所有人都可根据镜像地址进行拉取。
私有:私有命名空间下的所有镜像默认为私有镜像,只有对命名空间中镜像有拉取权限的用户才可拉取。
规格填写希望购买的容量数量
基本信息订阅和资源组选择资源所属的订阅和资源组。
命名空间名称填写命名空间的名称,支持小写英文字母、数字及短线“-”,小写英文开头,1-63个字符。

管理命名空间

修改命名空间是否支持公网访问​

应用场景

命名空间默认允许公网访问,仅支持租户管理员统一配置公网访问策略,当配置了“不允许公网访问“,租户下的所有用户均不可上传或拉取镜像

操作步骤

  1. 登录容器镜像服务控制台。

  2. 在左侧导航栏,选择命名空间,点击【操作-更多-修改】。

修改命名空间是否支持公网访问

  1. 修改命名空间是否支持公网访问。

修改命名空间是否支持公网访问

复制管理​

新建规则​

应用场景

您可以通过容器镜像服务中的复制管理配置仓库间的自动流转规则,确保各环境使用的镜像版本精准匹配。

操作步骤

  1. 登录容器镜像服务控制台。
  2. 在左侧导航栏,选择复制管理,点击【新建规则】。

新建规则

  1. 在弹窗中定义复制规则。规则中具备内容如下:
参数类型参数参数说明
新建规则规则名称该规则的名称
资源组该规则作用的资源组
资源过滤器名称过滤资源的名字。不填或者填写"/ "匹配所有资源;"library/"只匹配"library"下的资源
Tag过滤资源的tag/version。不填或者填写"/* "匹配所有;"1.0"只匹配以"1.0"开头的tag/version。
目标区域镜像复制操作的最终接收区域
触发模式可选定时触发或事件触发,定时触发需配合 “定时表达式” 配置具体时间,事件触发自动执行复制任务

复制规则

编辑规则​

应用场景

您可以通过编辑规则修改复制触发模式。

操作步骤

  1. 登录容器镜像服务控制台。
  2. 在左侧导航栏,选择复制管理。
  3. 点击操作列【编辑】按钮,在弹窗中修改触发模式。

修改触发模式 修改触发模式

镜像管理​

查看镜像列表​

应用场景

您可以通过容器镜像服务中的镜像管理查看已有的镜像和详情信息。

操作步骤

  1. 登录容器镜像服务控制台。
  2. 在左侧导航栏,选择镜像管理。
  3. 在镜像管理页面可以查看指定镜像的详细信息,镜像列表中的各项含义如下:
列名含义
镜像名称该镜像的名称
镜像标签可为镜像打上具有 AI 属性的自定义标签
所属命名空间该镜像所属命名空间
镜像地址该镜像的地址,您可在公网和Sensecore内网中拉取到该镜像
版本数该镜像所具备的所有版本数量
创建时间该镜像的最新更新时间
操作支持拷贝、拉取或删除

客户端上传镜像​

应用场景

您可以通过客户端上传镜像至容器镜像服务中的命名空间,并对镜像进行管理。

操作步骤

  1. 登录容器镜像服务控制台。
  2. 在左侧导航栏,选择镜像管理。
  3. 点击"客户端上传",进入客户端上传界面。若您是首次进入此界面,请先点击“启用”按钮,启用账号并设置密码。
  4. 在账号启用状态下复制 docker login 命令以此登录Sensecore容器镜像服务Docker Registry。
  5. 复制 docker tag 命令为镜像添加版本信息,使用 docker push 命令向 Registry 中推送镜像。
  6. 若您忘记密码,平台无法找回,您可以在“客户端上传界面”重置密码来解决。

客户端上传3 客户端上传4

管理镜像​

应用场景

您可以通过容器镜像服务中的镜像管理查看镜像的基本信息和每个镜像的详情。

操作步骤

  1. 登录容器镜像服务控制台。
  2. 在左侧导航栏,选择镜像管理。
  3. 在镜像管理页面点击管理按钮,进入镜像详情即可查看基本信息、镜像列表和操作指南。
  4. 通过镜像详情模板可查看该仓库下的所有镜像信息,可选择性删除,镜像列表中的各项含义如下:
列名含义
Digest镜像的摘要信息,当您下载镜像时,最后一行中会出现这个值
版本名称如果重复上传同版本镜像会导致旧版本失效,为避免占用空间容量,请您尽快删除
镜像大小该镜像所占空间大小
更新时间该镜像的最新更新时间
操作支持拷贝、拉取或删除镜像

镜像管理

添加标签​

应用场景

您可以通过容器镜像服务中的添加标签功能为镜像增加具有 AI 属性的自定义标签,以此对具有同种特征的镜像进行分类管理。

操作步骤

  1. 登录容器镜像服务控制台。
  2. 在左侧导航栏,选择镜像管理。
  3. 在镜像管理页面点击添加标签按钮,即可自定义该镜像的个性化标签,标签所具备的内容如下:
列名含义
通用标签所属子产品与芯片类型为通用标签(必填项),您在高性能 AI 算力池、云容器实例和 云开发机创建资源实例和任务时,会根据通用标签进行镜像的筛选,请正确选择标签内容以免无法选择到所需镜像
非通用标签非通用标签具有操作系统、驱动、开发语言、训练框架、加速库和模型算法等内容,可自由填写对应的标签值
系统标签系统标签为镜像来源,当镜像为用户在 CCR 中通过客户端上传则镜像来源为本地,当镜像为云开发机的镜像快照则镜像来源为快照,此标签为系统自动生成

添加标签

镜像导入​

管理源仓库​

应用场景

您可以在仓库管理模块新建源仓库或对列表中的源仓库进行编辑、删除操作。

操作步骤

  1. 登录容器镜像服务控制台。
  2. 在左侧导航栏,选择仓库管理。
  3. 点击新建源仓库,测试连接通过后,即可与源仓库建立连接。
  4. 点击编辑即可修改源仓库的仓库类型、源仓库名和URL。
  5. 用户名和访问密码分别为源仓库的认证用户名与访问 ID 对应的密码,如没有可不填。
列名含义
源仓库名自定义的源仓库标识名称
状态源仓库配置的当前可用状态,反映能否正常用于复制任务
源URL源仓库的完整访问地址(含协议和端口)
仓库类型源仓库的类型
创建时间该源仓库配置的创建时间,用于管理和追溯配置历史

添加标签 添加标签

执行导入任务​

应用场景

您可以在导入规则模块设置导入规则并选中规则执行导入任务。

操作步骤

  1. 登录容器镜像服务控制台。
  2. 在左侧导航栏,选择导入规则。
  3. 点击新建规则,在弹窗中定义导入规则。规则中具备内容如下:
参数类型参数参数说明
新建规则规则名称自定义的导入规则名称,用于标识和区分不同的导入策略
源仓库指的是需要复制镜像等资源的起始仓库,即从哪个项目中获取要复制的镜像。
资源过滤器名称过滤资源的名字。不填或者填写"/ "匹配所有资源;"library/"只匹配"library"下的资源
Tag过滤资源的tag/version。不填或者填写"/* "匹配所有;"1.0"只匹配以"1.0"开头的tag/version。
目标命名空间指定镜像在目标仓库中的存储位置
触发模式目前只提供手动触发
  1. 选中导入规则,下方出现此规则下的所有导入任务。点击执行,可再次执行导入规则,对应最新一条导入任务。
  2. 点击导入任务ID,可查看对应任务详情。
列名含义
ID为每个导入任务分配的唯一标识号码
状态表示导入任务的当前执行状态,如 “运行中”“成功”“失败”
创建时间记录导入任务配置的创建时间
持续时间导入任务从开始执行到结束所花费的时间长度
成功百分比表示导入任务中成功完成导入的镜像占总任务量的百分比
总数导入任务中需要处理的镜像的总数量

添加标签 添加标签