Google CloudのCloud ShellエディタがCode – OSSベースになったので触ってみた

こんにちはエヌデーデーの関口です。

今回はGoogle Cloudのコンソールを触っていたら、Cloud Shellエディタが新しくなっていたので、改めてCloud Shellの簡単な説明と、新しいCloud Shellエディタを操作してみた感想を書いてみます。

Cloud Shellとは?

Google Cloudに触れている方でCloud Shellの存在を知らない人はいないと思うのですが改めて。

Google CloudのCloud Shellは、コンソールにログインすると画面右上のアイコンから起動できます。

起動すると、画面下部にターミナルが出現し、ログインしたGoogleアカウントのユーザー領域でgcloudbashgitなどが実行できるので、ローカルマシンにGoogle Cloud SDKを入れられない環境などで利用すると便利です。

Cloud Shellの実態はGoogle Cloudが管理するCompute Engineを一時的に割り当てているというものなのでLinuxマシンをログインユーザーに一台貸し出しているのとほぼ同じ状態なのですが料金は掛かりません

起動するとbashなどが利用できる

Cloud Shellの制限事項

「へぇ、じゃあローカルの開発環境いらないじゃん」というのは早計でして、Cloud Shellには次のような制限があります。

  • $HOME領域の容量は5GBまで永続ストレージとして利用できる
  • 120日間アクセスがない場合は、永続ストレージが初期化される
  • 起動してから1週間の利用時間は50時間まで(1週間経つとカウントがリセットされる)

その他の制限事項はこちらをご覧ください。

このような制限事項にとらわれずに開発環境を用意したいという場合には、Cloud Workstationsというサービスの利用を検討してください。

Cloud Shellエディタ

このCloud Shellには、エディタ機能も搭載されています。

Cloud Shellのターミナル左上部に[エディタを開く]というボタンがあるので押してみると、左側にファイルツリーが表示され、どこか見覚えのあるようなコードエディタが登場します。

これは、Eclipse Theiaと呼ばれる統合開発環境(IDE)をCloud Shellの中に組み込んだものになっています。

Eclipse TheiaはEclipse FoundationがVisual Studio Code(VSCode)の代替として開発を進めているものです。

VSCodeには似ているのですが、左側のメニューに拡張機能のアイコンが無いなどの違いがあります。

新しいエディタを試す

さて、画面右上部に[新しいエディタを試す]というボタンがあります。こちらを押してみましょう。

すると以前のエディタと一見するとそれほど変わらないのですが、WelcomeのページにCode OSS for Cloud Shellと書いてあります。

よく見ると左のメニューに拡張機能のアイコンも追加されていて、見た目はVSCodeそっくりです。またGoogle Cloudが提供している拡張機能のCloud Codeも既にインストール済みです。

Code OSS for Cloud Shell

これが新しいCloud Shellのエディターです(プレビューですが)。これはCode – OSSという統合開発環境(IDE)をCloud Shellに組み込んで提供しているものです。

Code – OSSとはMicrosoftが提供しているVSCodeの基礎となっているIDEです。どういうことか?というと、VSCodeはMITライセンスで配布しているCode – OSSに、Microsoft独自のカスタマイズ、たとえばプロプライエタリなライブラリなどを含ませて提供しているものなのです。

VSCode = “Code – OSS" + “MSの独自カスタマイズ"

そのため、Code – OSSはMITライセンスの元で改変、提供が可能なソフトウェアとなっており、Google CloudではエディタにCode – OSSを採用したということですね。

Code – OSSはGithubのMicrosoftが公開しているリポジトリにあるため、リポジトリ管理はMicrosoftなのですが、それをGoogleが利用してるという状況なんですね。なんだかおもしろい。

ところで、Eclipse Theiaの開発にはGoogleが初めのうちにコントリビューションしたという情報があったのですが、どうなったんでしょうかね・・・?

拡張機能など

デフォルトでは、Jupyter関係の拡張機能がインストールされていますし、その他お好みで他の拡張機能もインストール可能です。未確認ではありますが、VSCodeで利用できるものはほぼ利用できるようです。

また、Cloud Codeが既にインストールされているので、Duet AI機能も利用できます。なお、2023年10月時点でDuet AI in Google Cloudを利用するためにはTrusted Tester Programなどの申請が必要です。

拡張機能メニューからCloud Codeを選択しHELP AND FEEDBACK > Change Settingsを選択します。

設定画面が開きますので、設定項目検索窓にCloudcode Duet AIと入力してください。

Duet AIの利用可否にチェックを入れ、Duet AIが有効になっているプロジェクトのプロジェクトIDを入力して、リロードのためにClick hereのリンクをクリックしてください。ここでプロジェクトIDを入力するのは、Duet AIはプロジェクト毎に有効・無効が制御されているためで、AIへの問い合わせやコード作成支援のAPIをどのプロジェクトにさせるのか?を指定するためです。

すると画面右下にDuet AIの文字が表示され、有効化されています。同時に左のメニューにはDuet AI Chatのアイコンも増えています。

後はDuet AIを利用しながらコーディングしましょう。

コードを書いたらgcloudコマンドでデプロイするのもgitでpushするのもご自由に・・・

まとめ

使い慣れたVSCodeとほぼ同等の環境をGoogle Cloudのコンソール上で実行できるってステキですねっ!

それではみなさん、いい開発ライフを!