4.2.3.2. 将 ConfigMap 指定为资源


如果您有一个包含配置值的 OpenShift ConfigMap,且您需要将 ConfigMap 作为集成资源进行整理,请使用 --resource <configmap-file > 选项。

先决条件

  • 设置 Camel K 开发环境
  • 您有一个或多个存储在 OpenShift 集群上的 ConfigMap 文件。例如,您可以使用以下命令创建 ConfigMap:

    oc create configmap my-cm --from-literal=my-configmap-key="configmap content"
    Copy to Clipboard Toggle word wrap

流程

  1. 创建一个 Camel K 集成,该集成引用存储在 OpenShift 集群中的 ConfigMap。

    例如,以下集成(名为 ResourceConfigmapRoute.java)引用名为 my-cm 的 ConfigMap,其中包含 my-configmap-key

    import org.apache.camel.builder.RouteBuilder;
    
    public class ResourceConfigmapRoute extends RouteBuilder {
      @Override
      public void configure() throws Exception {
    
        from("file:/etc/camel/resources/my-cm/?fileName=my-configmap-key&noop=true&idempotent=false")
            .log("resource file content is: ${body}");
    
      }
    }
    Copy to Clipboard Toggle word wrap
  2. 运行集成并使用 --resource 选项,将 ConfigMap 文件存储在默认的 /etc/camel/resources/ 目录中,使其可用于运行的集成。

    例如:

    kamel run --resource configmap:my-cm ResourceConfigmapRoute.java --dev
    Copy to Clipboard Toggle word wrap

    当集成启动时,Camel K operator 会使用 ConfigMap 的内容挂载一个卷(如 my-configmap-key)。

注: 如果您指定了集群中还没有可用的 ConfigMap,则集成会在 ConfigMap 可用时等待并启动。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat