In order to push a container image to Google container registry, there is an important consideration regarding the repository URL. First of all, there are several Google container registry region hosts available:
- gcr.io (currently USA region)
- us.gcr.io (USA region)
- eu.gcr.io (Europe region)
- asia.gcr.io (Asia region)
Note that these region hosts are network latency purpose, doesn't mean to restrict to a particular region. They are still accessible worldwide.
Second of all, while you tag the container image, you also need to specify your project-id on which you've enabled billing and API. Therefore, the entire repository URL could be:
<gcr region>/<project-id>/<image name>:tag
In my case, I used the region USA default, the project ID is kubernetes-cookbook, and the image name is my-nginx; therefore, my repository URL is:
gcr.io/kubernetes-cookbook/my-nginx:latest
Other than that, Google container registry is ready to use now!