当前位置: 首页 > 知识库问答 >
问题:

是否在Kubernetes ConfigMap中指定`int`值?

狄宏大
2023-03-14

是否有方法在ConfigMap中指定int值?当我尝试指定端口号时,我得到以下错误。

error: error validating "my-deployment.yml": error validating data: expected type int, for field spec.template.spec.containers[0].ports[0].containerPort, got string; if you choose to ignore these errors, turn validation off with --validate=false
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: my-service
spec:
  replicas: 2
  template:
    metadata:
      labels:
        app: poweramp-email-service
    spec:
      containers:
      - name: poweramp-email-service
        env:
          - name: SERVICE_PORT_NUM
            valueFrom:
              configMapKeyRef:
                name: stg-config
                key: poweramp-email-service.port
        image: nginx
        ports:
        - containerPort: my-service.port
my-service.port=9513

共有1个答案

陶温书
2023-03-14

您不能在spec.template.spec.containers[0].ports[0].containerport中使用configmap值恐怕,它是用于配置值的。

您可以使用它的选项(在本指南中指定)是

  • 作为环境变量
  • 作为命令行配置标志(使用环境变量)
  • 使用卷插件。

以这个MySQL图表模板为例,您可以将这里的端口设置为配置选项,如下所示:

ports:
  - name: mysql
  containerPort: {{ default 3306 .Values.mysqlPort }}

然后在values.yaml中设置该值

 类似资料:
  • 我目前正在学习和学习Java。现在我必须提交一个交付,并使用。 现在有人向我报告说,我的程序不可编译。(可能是测试人员用太低的版本编译的?)。这就是为什么我在互联网上搜索Random的文档。 https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/random.html

  • 问题内容: AFAIK,您无需在onclick中指定协议: 坏 好 今天,我在GoogleAnallytics上注意到他们正在使用它: 这个例子是完全错误的,还是有理由指定除?以外的其他内容? 问题答案: 这里的一些响应声称“javascript:”前缀是“过去的遗留物”,这意味着浏览器有意对它进行了特殊处理,以实现向后兼容。是否有确凿的证据证明是这种情况(有人检查过源代码)吗? 对我来说,它的意

  • 我有一个小的性能问题,当使用try-catch子句时,最好指定可以获得的确切异常,或者只使用exception它更好?例子: 或者如果你不介意什么样的例外: 因为我知道你可以使用不同的异常来触发不同的效果,但我只是要求性能。

  • 问题内容: 我正在尝试使用jQuery在特定端口上运行AJAX查询: 这不起作用:没有进行AJAX调用,并且Firebug中没有任何异常。如果我不指定端口,它确实可以工作。有人知道为什么吗? 问题答案: 由于“ 同源来源”政策而无法使用。仅在相同的域,协议和端口中才允许AJAX请求。 如果您确实需要从该来源获取数据,则应该期待JSONP。

  • 问题内容: 我有一个可选参数,它本身支持参数列表。 我的意思是,它应该支持: -f 1 2 -f 1 2 3 但不是: -f 1 -f 1 2 3 4 有没有办法在argparse中强制执行此操作?现在,我使用nargs =“ *”,然后检查列表长度。 编辑: 根据要求,我需要的是能够定义一个可接受数量的参数范围。我的意思是说(在示例中)2或3个args是正确的,但不是1或4或不在2..3范围内的

  • 问题内容: 我有一个容器。 假设 为什么我这样做是假的? 我认为是由于相同的原因,但我应该得到这个错误吗? 我可以以某种方式纠正它吗? TL; DR:我可以将Arraylist.contains()用于int [] 编辑: 解答(如果将来有人在此进行搜索,这是我作为解决方案编写的比较代码): 问题答案: 数组列表仅存储对数组的引用,而不存储其内容,因此只能说列表是否包含对您输入的数组的确切引用。它