1. Artifact Hub
Artifact Hub 是一个基于 Web 的应用程序,可用于查找、安装和发布 Kubernetes 包。
1.1. Introduction
This chart bootstraps an Artifact Hub deployment on a Kubernetes cluster using the Helm package manager.
1.2. 介绍
此图表使用 Helm 包管理器在 Kubernetes 集群上引导 Artifact Hub 部署。
1.3. 安装 Chart
安全说明: 在生产环境中部署 Artifact Hub 之前,请仔细查看所有可用的配置选项。默认值只是为了为用户提供一种快速简便的软件试用方式。
安装名为 hub 的 Chart
$ helm repo add artifact-hub https://artifacthub.github.io/helm-charts
$ helm install hub artifact-hub/artifact-hub
该命令使用默认配置在 Kubernetes 集群上部署 Artifact Hub。configuration 部分列出了可以在安装期间配置的参数。
一旦所有 pod 启动并运行,您就可以通过访问浏览器中 Ingress 对象中指定的地址来访问 Artifact Hub(http://192.168.64.18 如下所示)。
$ kubectl get ingress
NAME HOSTS ADDRESS PORTS AGE
hub * 192.168.64.18 80 6s
当该参数 dbMigrator.loadSampleData 设置为 true(默认)时,会自动注册一个 demo 用户和几个示例存储库。演示用户的凭据是:demo@artifacthub.io/changeme。登录后,您可以从控制面板更改密码。
1.4. Populating packages
该 Chart 安装了一个 cronjob 负责定期(每 30m)启动跟踪器,它从注册的存储库中索引包。当 dbMigrator.loadSampleData 设置为 true 时,默认情况下会添加一些示例存储库。如果您不想等到作业被 cronjob 触发,您可以使用以下命令手动创建一个:
$ kubectl create job initial-tracker-job --from=cronjob/tracker
1.5. Packages security reports
该 Chart 安装了另一个 cronjob 负责定期(每小时)启动扫描程序的扫描程序,该扫描程序扫描包的图像是否存在安全漏洞,并为它们生成安全报告。如果您不想等到作业被 cronjob 触发,您可以使用以下命令手动创建一个:
$ kubectl create job initial-scanner-job --from=cronjob/scanner
1.6. 卸载 Chart
卸载已经部署的实例 hub:
$ helm uninstall hub
该命令删除与 Chart 关联的所有 Kubernetes 组件并删除发布。
1.7. Configuration
请参阅 Artifact Hub 中的值参考文档,了解 Chart 的可配置参数及其默认值的列表。
使用 --set key=value[,key=value] 参数指定每个参数 helm install。例如,
$ helm install hub \
--set dbMigrator.loadSampleData=false \
artifact-hub/artifact-hub
或者,可以在安装 Chart 时提供指定参数值的 YAML 文件。例如,
$ helm install hub -f values.yaml artifact-hub/artifact-hub