GCEのカスタムイメージを別のプロジェクトにコピーする


手順

  • 【移行元】手動で作成したGCEインスタンスをカスタムイメージとして保存する
  • 【移行元】カスタムイメージをGCSにエクスポートする
command
$ gcloud compute images export --destination-uri <出力先URI> --image <作成したカスタムイメージ名> --project <移行元プロジェクトID>
example
$ gcloud compute images export --destination-uri gs://dev-my-bucket/my-gce.tar.gz --image my-gce --project dev-my-project
  • 【移行元】エクスポートしたイメージファイル(tar.gz)をローカルにダウンロードする
  • 【移行先】3.でダウンロードしたイメージファイルを移行先のGCSにアップロードする
  • 【移行先】カスタムイメージをGCSからインポートする
command
$ gcloud compute images create <作成するカスタムイメージ名> --source-uri <GCSのイメージファイルURI> --project <移行先プロジェクトID>
example
$ gcloud compute images create my-gce --source-uri gs://prd-my-bucket/my-gce.tar.gz --project prd-my-project

注意点

カスタムイメージのサイズが非常に大きい場合、ローカルへのダウンロードや移行先プロジェクトへのアップロードでうまく行かない or 時間がかかりすぎることがあるかも。

参考

https://cloud.google.com/compute/docs/images/export-image?hl=ja
https://cloud.google.com/compute/docs/images/import-existing-image?hl=ja