Kubernetes 集群 Docker 图像中的环境变量

environment variables in Docker images in Kubernetes Cluster

我正在开发一些 GCP 应用程序,这些应用程序在 GCP 的 Kubernetes 集群中进行了 dockerized(我是 Docker 和 Kubernetes 的新手)。为了访问某些 GCP 服务,环境变量 GOOGLE_APPLICATION_CREDENTIALS 需要指向凭证文件。
是否应该设置环境变量并将该文件包含在:
- 每个 Docker 图片?
- Kubernetes 集群?

GCP 特定内容
这是实际错误:com.google.api.gax.rpc.PermissionDeniedException:io.grpc.StatusRuntimeException:PERMISSION_DENIED:请求的身份验证范围不足。

-是否设置环境变量并将该文件包含在:
- 每个计算引擎实例? - 主 GCP 控制台?

而且,最重要的是,怎么做? :)

您需要创建一个服务帐户(IAM 和管理 > 服务帐户),以 JSON 格式为其生成密钥,然后为其授予所需的权限(IAM 和管理 > IAM)。如果您的容器需要访问它,最好将其作为 secret 添加到 kubernetes 中并将其安装到您的容器中。然后将环境变量设置为指向您已安装的秘密:

导出 GOOGLE_APPLICATION_CREDENTIALS="[PATH_TO_SECRET]"

这个页面应该让你去:https://cloud.google.com/kubernetes-engine/docs/tutorials/authenticating-to-cloud-platform#step_4_import_credentials_as_a_secret