GCPが提供しているプライベートリポジトリであるCloud Source Repositoriesが結構簡単に使えました。githubも無料でプライベートリポジトリを提供してくれるようになりましたが、デプロイを考慮するとCloud Source Repositoriesに置いたほうが便利なこともありますよね。
※今回はCloud Buildと連携してCloud Source Repositoriesからデプロイするまではしていません。
Cloud Source Repositories とは
大容量が無料で使えるプライベートリポジトリです。2019年8月時点での無料枠は下記の通りです。特に50GBまで無制限に使えるため、学習済みモデルでも学習データでも遠慮なく置いておくことができます。(cloneしやすさとか考えたら微妙ですが、、、)
無料枠 | 超過料金 |
5 ユーザーまで | 5 名を超えたプロジェクト ユーザー 1 名あたり $1/月 |
50 GB のストレージ | ストレージ 1 GB あたり $0.10/月 |
50 GB(下り) | 1 GB(下り)あたり $0.10/月 |
今回は使っていないのですが、GAEにデプロイしたり本番環境でデバッグ(アプリの停止や遅延なしで!)できるらしいです。詳細は公式で。
リポジトリの作成
予めGCPコンソールからCloud Source RepositoriesのAPIを有効にしておくことと、 cloud SDK のインストールが必要となります。gcloudコマンドが使えればOK。
また、initコマンドでプロジェクトやリージョンを設定している前提となります。(リージョンは指定不要かもしれませんが)
gcloud source repos create hello-world
gcloudコマンドが使えない場合はGCPのコンソール画面から作成することも可能です。GUI画面はちょいちょい更新されると思うので画像は載せませんが、直感的に操作できると思います。
(昔クラウドの講座を受けてて、前日まで使えたBigQueryのGUI画面が使えなくなって「クラウドではよくありますよね〜」って流した話があったな。。)
リポジトリのクローン
先程のコマンドで作成したリポジトリを下記コマンドでクローンすればあとはgithub等と同じです。APIを有効にするだけで低価格(個人で使うならだいたい無料)のプライベートリポジトリが作成できてしまいます。
gcloud source repos clone hello-world
gcloudコマンドが使えない場合は下記。
git clone https://source.developers.google.com/p/<PROJECT-ID>/r/hello-world
ここから先は通常のgitリポジトリと同じです。
touch readme.md
git add .
git commit -m "initial commit"
git push origin master
かなりお手軽なので、仮にデプロイを自動化しなかったりそもそもデプロイするようなソースじゃなくても無料のプライベートリポジトリとして使いやすいと思います。