【问题标题】:How to use environment variable in kubernetes container command?如何在 Kubernetes 容器命令中使用环境变量?
【发布时间】:2019-06-20 13:53:50
【问题描述】:

我正在尝试像这样将 cloudsql 代理部署为 sidecar 容器:

        - name: cloudsql-proxy
          image: gcr.io/cloudsql-docker/gce-proxy:1.11
          command: ["/cloud_sql_proxy",
              "-instances=${CLOUDSQL_INSTANCE}=tcp:5432",
              "-credential_file=/secrets/cloudsql/google_application_credentials.json"]
          env:
            - name: CLOUDSQL_INSTANCE
              valueFrom:
                secretKeyRef:
                  name: persistence-cloudsql-instance-creds
                  key: instance_name
          volumeMounts:
            - name: my-secrets-volume
              mountPath: /secrets/cloudsql
              readOnly: true

但是当我部署它时,我在日志中收到以下错误:

2019/06/20 13:42:38 couldn't connect to "${CLOUDSQL_INSTANCE}": googleapi: Error 400: Missing parameter: project., required

如何在 kubernetes 容器内运行的命令中使用环境变量?

【问题讨论】:

    标签: kubernetes cloud-sql-proxy


    【解决方案1】:

    如果您想在命令中引用环境变量,您需要将它们放入parentheses,例如:$(CLOUDSQL_INSTANCE)

    【讨论】:

      猜你喜欢
      • 2020-01-22
      • 1970-01-01
      • 1970-01-01
      • 2021-01-30
      • 1970-01-01
      • 2020-07-22
      • 2019-07-21
      • 2017-12-18
      • 2018-09-09
      相关资源
      最近更新 更多