我有一个项目,其中我需要使用gcloud命令,我需要使用适当的凭据进行构建,似乎gcloud命令没有使用变量GOOGLE_APPLICATION_CREDENTIALS,所以我在docker的RUN步骤中设置了auth
FROM google/cloud-sdk
COPY . usr/src/app
WORKDIR /usr/src/app
RUN gcloud auth activate-service-account --key-file=/usr/src/app/credentials.json但是,当我构建镜像并进入容器时,我无法访问gcloud命令。
gcloud projects list
我有下一个答案
警告:无法打开配置文件: /root/.config/gcloud/configurations/config_default.错误:(gcloud.projects.list)您当前未选择活动帐户。
凭据在容器中,因为如果我手动这样做,我可以运行下一个命令,一切都很好。
gcloud auth activate-service-account --key-file=/usr/src/app/credentials.json
如何在构建中添加默认存在的凭据?在构建映像时,运行步骤可能不会生效。
发布于 2021-05-06 01:54:55
您是对的,gcloud不会检查GOOGLE_APPLICATION_CREDENTIALS。
我认为您没有使用谷歌批准的容器镜像:Google Cloud SDK Docker
有关将服务帐户凭据挂载到容器中的好方法,请参阅Usage。
https://stackoverflow.com/questions/67394633
复制相似问题