要解决该问题,需要在项目中授予适当的IAM角色,例如“Kubernetes Engine Admin”和“Service Account User”。您可以使用以下命令将这些角色授予您的当前用户(请替换 YOUR_PROJECT_ID):
gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
--member=user:$(gcloud config get-value account) \
--role=roles/container.admin
gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
--member=user:$(gcloud config get-value account) \
--role=roles/iam.serviceAccountUser
如果您不希望将角色授予您的当前用户,则可以创建一个服务帐户,将该服务帐户授予所需的IAM角色,并使用该服务帐户身份验证部署命令。例如:
gcloud iam service-accounts create my-account --display-name "My Service Account"
gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
--member=serviceAccount:my-account@YOUR_PROJECT_ID.iam.gserviceaccount.com \
--role=roles/container.admin
gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
--member=serviceAccount:my-account@YOUR_PROJECT_ID.iam.gserviceaccount.com \
--role=roles/iam.serviceAccountUser
gcloud iam service-accounts keys create keyfile.json --iam-account=my-account@YOUR_PROJECT_ID.iam.gserviceaccount.com
gcloud auth activate-service-account --key-file=keyfile.json
gcloud config set project YOUR_PROJECT_ID
gcloud container clusters create my-cluster
请确保YOUR_PROJECT_ID”替换为实际的项目ID。
上一篇:部署gitlab服务器