如何 "create" 新的 Cloud 运行 服务(不将容器部署到现有容器)
How to "create" a new Cloud Run service (not deploying a container to an existing one)
我有这个cloudbuild.yaml
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
entrypoint: gcloud
args:
- 'alpha'
- 'run'
- 'deploy'
- 'backend'
- '--image=eu.gcr.io/$PROJECT_ID/backend:$BUILD_ID'
- '--concurrency=10'
- '--cpu=1'
- '--memory=512Mi'
- '--region=europe-west4'
- '--min-instances=1'
- '--max-instances=2'
- '--platform=managed'
- '--port=8080'
- '--timeout=3000'
- '--ingress=internal'
- '--vpc-connector=cloud-run'
- '--vpc-egress=private-ranges-only'
- '--set-cloudsql-instances=foo:europe-west4:bar'
如果我事先通过云 运行 控制台(Web UI)创建了一个服务,它就可以正常工作。但是我想要的是最初创建一个名为 xy 的服务,如果它不存在的话。
因为我的 CI 管道显示此错误:
Step #2: ERROR: (gcloud.alpha.run.deploy) PERMISSION_DENIED: Permission 'run.services.get' denied on resource 'namespaces/***/services/backend' (or resource may not exist).
这是正确的。 services/backend
不存在。但如果它不存在,我想创建它,并在将来简单地更新它的容器图像。我通读了有关 run
的整个 gcloud API 文档,但找不到任何内容。好像是故意漏掉的?
我在 cloudbuild IAM 中删除 cloud 运行 管理员权限时出现上述错误,但是当我将 Cloud 运行 管理员角色添加到 cloudbuild IAM 时,它能够创建一个新的 Cloud 运行 服务,如果服务存在,它能够将新映像部署到该云 运行 服务。
此外,尝试删除 .yaml 文件中的 'alpha'。
我有这个cloudbuild.yaml
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
entrypoint: gcloud
args:
- 'alpha'
- 'run'
- 'deploy'
- 'backend'
- '--image=eu.gcr.io/$PROJECT_ID/backend:$BUILD_ID'
- '--concurrency=10'
- '--cpu=1'
- '--memory=512Mi'
- '--region=europe-west4'
- '--min-instances=1'
- '--max-instances=2'
- '--platform=managed'
- '--port=8080'
- '--timeout=3000'
- '--ingress=internal'
- '--vpc-connector=cloud-run'
- '--vpc-egress=private-ranges-only'
- '--set-cloudsql-instances=foo:europe-west4:bar'
如果我事先通过云 运行 控制台(Web UI)创建了一个服务,它就可以正常工作。但是我想要的是最初创建一个名为 xy 的服务,如果它不存在的话。
因为我的 CI 管道显示此错误:
Step #2: ERROR: (gcloud.alpha.run.deploy) PERMISSION_DENIED: Permission 'run.services.get' denied on resource 'namespaces/***/services/backend' (or resource may not exist).
这是正确的。 services/backend
不存在。但如果它不存在,我想创建它,并在将来简单地更新它的容器图像。我通读了有关 run
的整个 gcloud API 文档,但找不到任何内容。好像是故意漏掉的?
我在 cloudbuild IAM 中删除 cloud 运行 管理员权限时出现上述错误,但是当我将 Cloud 运行 管理员角色添加到 cloudbuild IAM 时,它能够创建一个新的 Cloud 运行 服务,如果服务存在,它能够将新映像部署到该云 运行 服务。
此外,尝试删除 .yaml 文件中的 'alpha'。