https://cloud.google.com/artifact-registry/docs/docker/store-docker-container-images?hl=ja
Google Cloud には、コンテナ イメージの保存と管理を行うための 2 つのサービスがあります。
Artifact Registry(推奨)
Container Registry
現在、Container Registry を使用していない場合は、Artifact Registry を使用してください。
-- 1. 前作業
gcloud init
gcloud auth list
gcloud --version
gcloud projects create project01-9999999 \
--name="project01"
gcloud config list
gcloud config set project project01-9999999
gcloud config set compute/region asia-northeast1 --quiet
gcloud config set compute/zone asia-northeast1-a --quiet
gcloud beta billing accounts list
gcloud beta billing projects link project01-9999999 --billing-account=111111-111111-111111
gcloud services enable compute.googleapis.com --project project01-9999999
gcloud components update
-- 2. Artifact Registry API を有効にします
gcloud services list --enabled
gcloud services enable artifactregistry.googleapis.com \
--project project01-9999999
-- 3. Docker リポジトリを作成する
gcloud artifacts repositories create repo01 \
--repository-format=docker \
--location=asia-northeast1 \
--description="repo01"
gcloud artifacts repositories list
-- 4. 認証を構成する
gcloud auth configure-docker asia-northeast1-docker.pkg.dev
-- 5. push するイメージを取得する
docker pull us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0
docker images
-- 6. イメージをリポジトリに追加する
docker tag us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0 \
asia-northeast1-docker.pkg.dev/project01-9999999/repo01/image01:tag01
docker images
docker push asia-northeast1-docker.pkg.dev/project01-9999999/repo01/image01:tag01
-- 7. コンテナー イメージの一覧表示
gcloud artifacts docker images list asia-northeast1-docker.pkg.dev/project01-9999999/repo01
-- 8. Artifact Registry からイメージを pull する
docker images
docker rmi asia-northeast1-docker.pkg.dev/project01-9999999/repo01/image01:tag01
docker images
docker pull asia-northeast1-docker.pkg.dev/project01-9999999/repo01/image01:tag01
docker images
-- 9. クリーンアップ
gcloud artifacts repositories delete \
repo01 \
--location=asia-northeast1 \
--quiet
gcloud projects list
gcloud projects delete project01-9999999 \
--quiet