制品仓库

本地仓库

概述

本地仓库是用于存放用户上传的Docker镜像、Chart部署包的场所,用户可上传自己修改过的镜像、Chart部署包到本地仓库,或从本地仓库下载已上传的Docker镜像和Chart部署包。

创建本地仓库

ZStack Zaku主菜单,点击制品仓库 > 本地仓库。在本地仓库界面,点击创建仓库,弹出创建仓库界面。

可参考以下示例输入相应内容:
  • 名称:设置仓库名称。命名规则:长度限制2-50字符,只能包含小写字母、数字及特殊字符 (_) (-) (.),特殊字符不能用于开头或结尾且不能连续使用
  • 简介:可选项,备注仓库相关信息
  • 类型:设置仓库类型,支持公开和私有两种类型
    • 公开:公开类型的仓库不需要登录即可拉取镜像,平台所有用户都可以查看到该仓库
    • 私有:私有类型的仓库需要登录认证信息才可拉取镜像,只有管理和仓库所属项目的用户才可以查看到该仓库
图 1所示:
图 1. 创建本地仓库


管理本地仓库

ZStack Zaku主菜单,点击制品仓库 > 本地仓库,进入本地仓库界面。

本地仓库支持以下操作:
操作 描述
创建本地仓库 创建新仓库。
修改本地仓库 修改仓库的简介和类型。
重置密码 重置本地仓库的用户密码,用户可通过该密码,使用docker/nerdctl login命令登录该仓库。
Note:
  • 一个平台用户对应一个本地仓库用户,用户名由平台自动生成。
  • 首次使用,无登录密码场景下,可以使用重置密码来设置密码,重置密码无需验证旧密码。
本地仓库详情 进入本地仓库详情页,查看仓库基本信息和镜像导出记录,并集中管理仓库中的镜像和Chart部署包。
更改项目 更改本地仓库所属的项目。
Note: 更改项目后,原项目内成员将无法继续查看或管理该本地仓库和仓库中的资源。
删除仓库 将本地仓库删除。
Note: 删除本地仓库需要先删除仓库中的所有镜像和Chart部署包。

本地仓库详情

Docker镜像

上传镜像

在本地仓库详情页,点击镜像,进入镜像标签页,点击上传,弹出上传镜像界面。

支持以下三种镜像上传方式:
  • 在线上传
  • 文件上传
  • 命令上传

在线上传

可参考以下示例输入相应内容:
  • 上传方式:选择在线上传
  • 外部镜像地址:填写外部镜像URL地址。URL中如不包含镜像标签,系统将默认使用latest标签
  • 架构:选择镜像要上传的架构。可选 linux/arm64 和 linux/amd64 两种,支持多选。
    Note: 对于多架构的镜像,若只选择一种架构,则只有所选架构的 layer 会上传。
  • 用户名:填写镜像所属仓库的用户名,镜像存放在私有仓库时,需填写该参数以在拉取镜像时进行身份校验
  • 密码:填写用户名对应的密码,镜像存放在私有仓库时,需填写该参数以在拉取镜像时进行身份校验
图 1所示:
图 1. 上传镜像-在线上传


文件上传

可参考以下示例输入相应内容:
  • 上传方式:选择文件上传
  • 镜像文件:选择要上传的镜像文件,仅支持上传容器管理工具导出的镜像压缩包
    Note: 用户可使用docker或nerdctl命令生成镜像压缩包,例如:
    # docker save -o $OUTPUT_FILENAME $IMAGE:$TAG
    # $OUTPUT_FILENAME指生成的压缩包文件名,$IMAGE:$TAG指要压缩的镜像和标签
    # 注:针对多架构镜像,该命令仅导出本地已拉取的单个架构(默认当前机器架构,多次拉取则取最后一次架构),不支持多架构导出。若需完整保留所有架构,请使用 nerdctl。
    # nerdctl save -o $OUTPUT_FILENAME $IMAGE:$TAG --platform $PLATFORM
    # $OUTPUT_FILENAME指生成的压缩包文件名,$IMAGE:$TAG指要压缩的镜像和标签
    # 注:多架构镜像可通过 --platform 参数指定架构,$PLATFORM 为具体的架构标识,如linux/amd64、linux/arm64,可使用逗号分隔指定多个架构。
  • 架构:选择镜像要上传的架构。可选 linux/arm64 和 linux/amd64 两种 , 支持多选。
    Note:
    • 对于多架构的镜像 , 若只选择一种架构 , 则只有所选架构的 layer 会上传。
    • 请确保镜像压缩包中的镜像有包含所选架构 , 否则将上传失败。
图 2所示:
图 2. 上传镜像-文件上传


命令上传

命令上传是指通过docker或nerdctl命令将镜像从外部仓库推送到本地仓库,可参考以下步骤完成上传:
  1. 上传镜像界面,选择上传方式为命令上传,并选择命令类型。
  2. 复制界面下方提供的命令到可以连接外部仓库的终端,修改变量参数并执行命令,完成镜像上传。
图 3所示:
图 3. 上传镜像-命令上传


下载和拉取镜像

下载镜像

用户可参考以下步骤,从本地仓库下载镜像使用:
  1. 在本地仓库详情页,进入镜像标签页,找到需要下载的镜像,点击操作 > 导出
    图 1所示:
    图 1. 导出镜像


  2. 进入本地镜像详情页镜像导出记录标签页,找到步骤1中导出的镜像,点击操作 > 下载,将镜像压缩包下载到本地。
    Note:
    • 导出的镜像需在24小时之内下载,否则导出记录将会失效,需重新导出。
    • 当短时间导出较多较大镜像时,可能导致存储空间占满,无法再导出镜像,则可先将已下载的导出镜像删除。
    图 2所示:
    图 2. 下载镜像


  3. (可选) 执行docker load命令将下载的镜像导入其他仓库使用,例如:
    # docker load -i $IMAGE.TAR
    # $IMAGE.TAR为镜像压缩包名称

拉取镜像

用户可参考以下步骤,拉取本地仓库中的镜像:
  1. 在本地仓库详情页,进入镜像标签页,找到需要下载的镜像,点击操作 > 拉取命令,查看镜像地址、用于登录仓库和拉取镜像的docker命令和nerdctl命令。
    图 3所示:
    图 3. 拉取命令


  2. 复制命令并用于需要拉取镜像的场景。

Chart部署包

上传Chart

在本地仓库详情页,点击Chart,进入Chart标签页,点击上传,弹出上传Chart界面。用户将本地Chart部署包上传到该界面即可,如图 1所示:
图 1. 上传Chart


发布应用

发布应用即将Chart部署包发布到集群,并部署一个应用实例,ZStack Zaku支持将本地仓库中的Chart一键发布。

在本地仓库详情页进入Chart标签页,找到需要发布的Chart,点击操作 > 发布,弹出发布应用界面。

可参考以下示例输入相应内容:
  • 应用名称:设置应用名称。长度限制2~20字符,输入内容只能包含小写字母、数字及分隔符 (-),且必须以小写字母开头,以小写字母或者数字结尾
  • 版本:设置应用版本
  • 简介:可选项,备注应用相关信息
  • 集群:选择应用所发布到的集群
  • 命名空间:选择应用所发布到的命名空间
  • Chart版本:选择Chart版本,默认为Chart列表中显示的版本
  • 应用配置:通过YAML方式修改部署包中values文件的内容。用户可点击修改内容,查看修改前后对比
图 1所示:
图 1. 发布应用


Note: 应用发布后,可在ZStack Zaku主菜单,点击容器编排 > 应用管理 > 应用,进入应用界面,查看和管理该应用。

模板仓库

概述

模板仓库用于存放用户编写的YAML模板,并提供Deployment、Statefulset、Service、Configmap、PersistentVolumeClaim等十几种常见Kubernetes资源的示例模板参考。用户可在模板仓库中结合示例模板快速编写所需要的YAML文本。

创建模板

ZStack Zaku主菜单,点击制品仓库 > 模板仓库,进入模板仓库界面。点击创建模板,弹出创建模板界面。

可参考以下示例输入相应内容:
  • 名称:设置模板名称。命名规则:长度限制2-50个字符,输入内容只能包含小写字母、数字及分隔符 (-),分隔符不能用于名称开头或结尾
  • 简介:可选项,备注模板相关信息
  • 示例模板:选择Deployment、Statefulset、Service、Configmap、PersistentVolumeClaim等常见资源示例模板,或自定义模板
  • 模板内容:选择常见的资源示例模板时,可在YAML示例基础上进行修改;选择自定义模板时,可自行填写YAML内容。支持填写多个资源YAML,并用 (---) 分隔
图 1所示:
图 1. 创建模板


管理模板

ZStack Zaku主菜单,点击制品仓库 > 模板仓库,进入模板仓库界面。

模板仓库支持以下操作:
操作 描述
创建模板 通过示例模板创建模板,或创建自定义模板。
修改模板 修改模板的简介和内容。
更改项目 更改模板所属项目。
Note: 更改后,原项目内成员将无法继续查看和管理该模板
删除模板 将模板删除。

应用市场

概述

应用市场提供了 nfs、nginx、nginx-ingress-controller 等官方Chart部署包,可一键发布到集群,部署为应用实例。

图 1所示:
图 1. 应用市场


发布应用

发布应用即将Chart部署包发布到集群,并部署一个应用实例,ZStack Zaku支持将应用市场中的Chart包一键发布。

可参考以下示例输入相应内容:
  • 应用名称:设置应用名称。长度限制2~20字符,输入内容只能包含小写字母、数字及分隔符 (-),且必须以小写字母开头,以小写字母或者数字结尾
  • 版本:设置应用版本
  • 简介:可选项,备注应用相关信息
  • 集群:选择应用所发布到的集群
  • 命名空间:选择应用所发布到的命名空间
  • Chart版本:展示默认的Chart版本,目前不支持修改
  • 应用配置:修改部署包中values文件的配置内容,支持表单编辑YAML编辑两种修改方式。用户可点击修改内容查看修改前后对比
    • 表单编辑:针对常用配置提供可视化修改方式,主要用于较为简单的配置修改。
    • YAML编辑:在YAML编辑器中修改应用YAML,主要用于较为复杂的配置修改。
图 1所示:
图 1. 发布应用


Note: 应用发布后,可在ZStack Zaku主菜单,点击容器编排 > 应用管理 > 应用,进入应用界面,查看和管理该应用。