首页 / 平台管理 / 应用商店管理 / 应用上架 / violet 工具使用说明

violet 工具使用说明

通过 violet 工具,支持打包 Operator、Chart、集群插件,并通过打包后的文件将对应的制品上架到平台的应用商店中。

工具使用流程

  1. 下载 violet 工具并在上架执行环境中安装(仅初次需要操作)。

  2. 执行 violet create 命令对应用进行初始化(需提前准备好应用相关的镜像等物料)。

  3. 执行 violet package 命令对应用进行打包。

  4. 执行 violet push 命令解压并一键上架应用。

下载并安装工具

violet 工具支持在 Linux、MacOS、Windows 三种操作系统中,x86 和 ARM 架构下使用。平台管理员可通过 平台管理 -> 应用商店管理 -> 应用上架 功能页面下载 violet 工具。

根据自己当前系统环境,下载得到二进制文件后,进行安装:

windows 系统,将下载得到的文件重命名为 violet.exe,在 violet.exe 所在目录下,通过 powershell 命令行运行该工具即可。

注意事项

希望将应用上架到 部署平台(Global集群)使用的镜像仓库 中管理时,根据待上架应用的类型,执行以下 打包上架 Operator打包上架 Chart打包上架 集群插件 中的单一章节即可。

希望将应用上架到 业务应用使用的镜像仓库(非部署平台时使用的镜像仓库) 中管理时,请阅读 应用上架到非平台仓库 后,再执行以下相应章节完成应用上架。

打包上架 Operator

打包

说明

Operator 需要导出的工件组成:

例子:自定义的 operator,名称是 opensearch-operator,在 harbor 仓库里存放的 OCI 路径是: harbor.demo.io/middleware/opensearchproject/opensearch-operator-bundle:v3.14.2

该 operator 用到的容器镜像是:

打包时,需要将 operator bundle 镜像和 容器镜像一起导出,并打包到一个文件里,方便传输。

操作

以 opensearch-operator 为例,打包步骤如下:

提示

  1. 初始化

通过 violet create 命令对某个待打包的 Operator 进行初始化。

参数说明:

  1. 打包

通过 violet package 命令打包某个 Operator。打包命令将会把 Operator bundle 镜像、所有相关的容器镜像以及 manifest.yaml 文件打包成一个 tgz 文件。

参数说明:

上架

说明

上架前的准备工作:

操作

通过 violet push 命令,将自动解压 tgz 包,并将所有的制品和镜像都上传到平台的 global registry 镜像仓库中,并且将 operator 上架到 operatorhub 中。

提示

上架至平台默认镜像仓库的场景(推荐)

自定义镜像仓库地址场景

参数说明:

imagePullSecret 创建参考示例:

violet push 命令执行成功后,进入平台 平台管理 -> 应用商店管理 -> Operators -> OperatorHub 页面,查验 operator 是否已在界面中展示。

打包上架 chart

打包

说明

Helm chart,需要导出的工件包括:

例子:某个待打包的 chart,名称是 chartmuseum,在 harbor 仓库里存放的OCI路径是: harbor.demo.io/3rdparty/chart-chartmuseum:v3.16.1,

该chart用到的容器镜像是:harbor.demo.io/3rdparty/chartmuseum:v3.16.0,

打包时,需要将该 OCI Chart 和容器镜像一起导出,并打包到一个文件里,方便传输。

操作

以 chartmuseum chart 为例,打包步骤如下:

提示

  1. 初始化

通过 violet create 命令对某个待打包的 chart 进行初始化。

参数说明:

  1. 打包

通过 violet package 命令打包某个 chart,打包命令将会把 oci chart 制品、所有相关的容器镜像以及 manifest.yaml 文件打包成一个 tgz 文件。

参数说明:

上架

说明

上架前的准备工作:

通过 violet push 命令,将自动解压 tgz 包,并将所有的制品和镜像都上传到平台的 global registry 镜像仓库中,并且自动同步目标模板仓库(当前仅支持 public-charts )。

提示

上架至平台默认镜像仓库的场景(推荐):

自定义镜像仓库地址场景:

参数说明:

imagePullSecret 创建参考示例:

violet push 命令执行成功后,进入平台 平台管理 -> 应用商店管理 -> 模板仓库 名称为 public-charts 仓库的详情页面,查验 chart 是否已在界面中展示。

打包上架 集群插件

打包

说明

集群插件是一个特定的 Helm chart,相对于普通 chart,它的特别之处在于包含了一个被平台识别为集群插件的 ModulePlugin 资源,需要导出的工件包括:

例子:某个待打包的插件,名称是 cloudedge,在 harbor 仓库里存放的 OCI 路径是: harbor.demo.io/acp/chart-cloudedge:v3.16.2

该插件用到的容器镜像是:

描述该插件的 ModulePlugin 内容参考:

打包时,需要将上面插件 OCI Chart, 容器镜像和 ModulePlugin 资源一起导出,并打包到一个文件里,方便传输。

提示

操作

以 cloudedge 插件为例,打包步骤如下:

提示

  1. 初始化

通过 violet create 命令对某个待打包的插件进行初始化。

参数说明:

  1. 打包

通过 violet package 命令打包某个插件,打包命令将会把 oci chart 制品、所有相关的容器镜像以及 manifest.yaml 文件、moduleplugin.yaml 打包成一个 tgz 文件。

参数说明:

上架

说明

上架前的准备工作:

操作

通过 violet push 命令,将自动解压 tgz 包,并将所有的制品和镜像都上传到平台的 global registry 镜像仓库中,并且自动创建 tgz 包中携带的 ModulePlugin 资源。

提示

上架至平台默认镜像仓库的场景(推荐):

自定义镜像仓库地址场景:

参数说明:

imagePullSecret 创建参考示例:

violet push 命令执行成功后,进入平台 平台管理 -> 应用商店管理 -> 集群插件 页面,查验插件是否已在界面中展示。

辅助操作

预览应用包

平台管理员拿到应用包后,准备上架前,想先确认下包中内容是否有问题,可以通过 violet show 命令查看应用包,确认无误后再选择上架到平台中使用。