搜索

3.5.6.2.3. 自定义绑定

download PDF

odo link 接受标记 --map,它可以将自定义绑定信息注入组件。此类绑定信息将从您链接到您的组件的资源清单中获取。例如,在后端组件和 PostgreSQL 服务的上下文中,您可以将 PostgreSQL 服务的清单 postgrescluster.yaml 文件中的信息注入后端组件。

如果 PostgresCluster 服务的名称是 hippo (或者 odo service list 的输出,如果您的 PostgresCluster 服务被命名),当您需要将 YAML 定义中的 postgresVersion 值注入后端组件时,请运行以下命令:

$ odo link PostgresCluster/hippo --map pgVersion='{{ .hippo.spec.postgresVersion }}'

请注意,如果 Postgres 服务的名称与 hippo 不同,则必须在上述命令中指定在 pgVersion 的值代替 .hippo 的位置。

在链接操作后,照常运行 odo push。在成功完成推送操作后,您可以从后端组件目录中运行以下命令,以验证是否正确注入自定义映射:

$ odo exec -- env | grep pgVersion

输出示例:

pgVersion=13

因为您可能希望注入多个自定义绑定信息,odo link 接受映射的多个键值对。唯一约束应将它们指定为 --map <key>=<value>。例如,如果还想将 PostgreSQL 镜像信息与版本一起注入,您可以运行:

$ odo link PostgresCluster/hippo --map pgVersion='{{ .hippo.spec.postgresVersion }}' --map pgImage='{{ .hippo.spec.image }}'

然后运行 odo push。要验证两个映射是否已正确注入的映射,请运行以下命令:

$ odo exec -- env | grep -e "pgVersion\|pgImage"

输出示例:

pgVersion=13
pgImage=registry.developers.crunchydata.com/crunchydata/crunchy-postgres-ha:centos8-13.4-0

3.5.6.2.3.1. 使用内联还是不使用?

您可以接受默认行为,odo linkkubernetes/ 目录下的链接生成清单文件。另外,如果您想将所有内容存储在单个 devfile.yaml 文件中,您可以使用 --inlined 标志。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.