invalid image name in cloud build when using domain-scoped project

折月煮酒 提交于 2020-05-11 12:58:48

问题


I'm trying to build a container with GCP's Cloud Build. I'm using the simple template from the quickstart doc. I've done this before successfully.

However, this time I am using a project which is under an "organization". So the project ID is mycompany.com:projectX, rather than simply projectX.

I am unable to get the build to complete.

When I run:

gcloud builds submit --tag gcr.io/mycompany.com:project-id/helloworld

I get the following error:

(gcloud.builds.submit) INVALID_ARGUMENT: invalid build: invalid image name "gcr.io/mycompany.com:projectX/helloworld" 

I suspect that since the --tag flag calls docker build -t $TAG . under the hood and docker image names use : to specify versions, this format may be invalid.

Any ideas what I am supposed to do when working with organization projects? I cannot find relevant info in the Cloud Build or GCP IAM docs.

Some things I've tried:

  • using a cloudbuild.yaml config file with a $PROJECT_ID substitution to ensure I have the correct format
  • using the project number instead of the project ID (Using the project number in the image path is not supported. Project ID must be used instead)
  • omitting the organization name altogether, which is denied with Token exchange failed for project
  • checking my permissions - I have Cloud Build Editor and Cloud Run Invoker roles, where the former specifies that I can "create and cancel builds"

回答1:


You need to replace the ":" with a "/"

gcloud builds submit --tag gcr.io/mycompany.com/project-id/helloworld

More info can be found here: https://cloud.google.com/container-registry/docs/overview#domain-scoped_projects




回答2:


you can do it by running:

gcloud beta run deploy --image gcr.io/replica-20584682/helloworld --platform managed

now all the projects are under an organization by default and the project id is unique globally here its explained this.

As it is unique globally while deploying you don't need to mention the organization.

EDIT added the flag --platform managed



来源:https://stackoverflow.com/questions/58045088/invalid-image-name-in-cloud-build-when-using-domain-scoped-project

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!