在 google 云上部署 node.js 应用程序时遇到错误
Facing error while deploying node.js app on google cloud
我正在尝试在 google 云上部署 node.js
应用程序,但出现以下错误。我从 10 月 10 日开始就面临这个错误。不知道如何解决:
Step #2: ERROR: (gcloud.beta.app.deploy) PERMISSION_DENIED: You do not have permission to act as '[xxxxxxx]@appspot.gserviceaccount.com'
Step #2: - '@type': type.googleapis.com/google.rpc.ResourceInfo
Step #2: description: You do not have permission to act as this service account.
Step #2: resourceName: [xxxxxx]@appspot.gserviceaccount.com
Step #2: resourceType: serviceAccount
Finished Step #2
ERROR
ERROR: build step 2 "gcr.io/cloud-builders/gcloud" failed: step exited with non-zero status: 1
CloudBuild.yaml
:
steps:
- name: node:10.15.1
entrypoint: npm
args: ['install']
- name: node:10.15.1
entrypoint: npm
args: [ 'run', 'build', '--prod --verbose']
- name: 'gcr.io/cloud-builders/gcloud'
args: ['beta', 'app', 'deploy', '--version=prod', '--no-cache']
timeout: '4800s'
我认为您应该向我的 CI/CD 服务帐户授予 Service Account User
权限。
您可以使用控制台 UI 或 gcloud 命令:
Granting, changing, and revoking access to resources
gcloud iam service-accounts add-iam-policy-binding \
${PROJECT_ID}@appspot.gserviceaccount.com \
--member=serviceAccount:${PROJECT_NUMBER}@cloudbuild.gserviceaccount.com \
--role=roles/iam.serviceAccountUser \
--project=${PROJECT_ID}
我正在尝试在 google 云上部署 node.js
应用程序,但出现以下错误。我从 10 月 10 日开始就面临这个错误。不知道如何解决:
Step #2: ERROR: (gcloud.beta.app.deploy) PERMISSION_DENIED: You do not have permission to act as '[xxxxxxx]@appspot.gserviceaccount.com'
Step #2: - '@type': type.googleapis.com/google.rpc.ResourceInfo
Step #2: description: You do not have permission to act as this service account.
Step #2: resourceName: [xxxxxx]@appspot.gserviceaccount.com
Step #2: resourceType: serviceAccount
Finished Step #2
ERROR
ERROR: build step 2 "gcr.io/cloud-builders/gcloud" failed: step exited with non-zero status: 1
CloudBuild.yaml
:
steps:
- name: node:10.15.1
entrypoint: npm
args: ['install']
- name: node:10.15.1
entrypoint: npm
args: [ 'run', 'build', '--prod --verbose']
- name: 'gcr.io/cloud-builders/gcloud'
args: ['beta', 'app', 'deploy', '--version=prod', '--no-cache']
timeout: '4800s'
我认为您应该向我的 CI/CD 服务帐户授予 Service Account User
权限。
您可以使用控制台 UI 或 gcloud 命令:
Granting, changing, and revoking access to resources
gcloud iam service-accounts add-iam-policy-binding \
${PROJECT_ID}@appspot.gserviceaccount.com \
--member=serviceAccount:${PROJECT_NUMBER}@cloudbuild.gserviceaccount.com \
--role=roles/iam.serviceAccountUser \
--project=${PROJECT_ID}