コンテナアプリ開発に便利な Visual Studio Code と IntelliJ 用のプラグイン Cloud Code で、Google Cloud Kubernetes Engine (GKE) クラスタにアプリケーションをデプロイできるようになりました。ここでは、Visual Studio Code 用を使って、サンプルアプリ Guestbook をデプロイしてみたいと思います。また、コンテナのビルドは Cloud Build を使ってみしょう。
方法は、QuickStart を見ればだいたいわかりますが、日本語でもまとめてみました。
-
QuickStart を参考に、Docker と kubectl と Skaffold を入れておきます。ここでは Mac 環境での準備を参考に書いておきます。ちなみに、Skaffold は Kubernetes クラスタで、アプリケーションの継続的デリバリーを行うコマンドラインツールです。Skaffold を利用するには kubectl と Docker が必要になります。
-
Docker Desktop(Mac 版)をインストール
-
kubectl と skaffold をインストール
brew install kubernetes-cli
brew install skaffold
- Cloud SDK を インストールし、gcloud 環境を初期化
curl https://sdk.cloud.google.com | bash
exec -l $SHELL
gcloud init
-
GCP コンソールより、 GKE クラスタを構築(Cloud Code を入れると、Cloud Code からも作成できるようです)

-
VS Code から、
Shift + Command + Xで拡張機能ビューを表示して、Cloud Codeを検索しインストール

-
Shift + Command + Pでコマンドパレットを表示して、Cloud Code: New Applicationで、アプリケーションを作成。ここでは、Node.js: Guestbookを選択

-
GKE クラスタが正しく構築されていると VS Code にこのように表示されます。左のアクティビティバーの下にある Cloud Code のアイコンをクリックすると、Kubernetes 環境が表示されます。

-
作成された、GKE クラスタを右クリックし
Set as Active Clusterをクリックし、Active Cluster に設定すると、Cluster Explorer に GKE クラスタが表示されます。 -
Cloud Code: Deployでサンプルアプリケーションをデプロイ -
[default]ローカルの Docker 環境でビルド -
cloudbuildCloud Build 環境でビルド (今回はこちらを選択) -
Cloud Build 環境で、コンテナをビルドするときの注意
+ quickstart-docker を参考に、Cloud Build API を有効にしておきましょう。
+getting google client: google: could not find default credentials.といエラーが出力される場合はgcloud auth application-default loginで アプリケーションのデフォルトクレデンシャルを設定してみましょう。



