はじめに
Google CloudのCloud Shellってご存知でしょうか?
私は仕事ではAWSを使うことが多いので、周りでGoogleのCloud Shellを使っている人はあまり見たことがありません。
しかしながら使ってみればみるほど素晴らしいサービスなのでGoogle Cloudを使ってない人にもぜひ知っておいて欲しいです。
Cloud Shellとは
正確な説明は公式のドキュメントに譲るとして、ざっくり言ってしまうと、ブラウザからアクセスできるLinux開発環境
です。
開発者がよく使うコマンドラインツールやプログラミング言語がプリインストールされており、アクセスしてすぐに使い始めることが可能です(Python、Node.js、Goなどの言語や、Docker、Minikube、Git、Terraformといったツール)。Minikubeまでデフォルトで使える状態になってるの凄いですね。Kubernetesの勉強も環境構築要らずで始めることができちゃいます。
また、当然ですがgcloud cliもプリインストールされているのでGoogle Cloudとの連携も容易です。
何が嬉しいのか?
便利な点は色々あるのですが、Google Cloud Shellならではの特長を紹介します。
googleアカウントがあればすぐに使い始めることができる
Cloud ShellはGoogle Cloudのサービスの1つなのですが、gmailのアカウントさえ持っていれば、ブラウザからCloud Shellを開くことができます。もちろん、gmailでなくともgoogleアカウントとして利用可能なものでも可です。
しかも、Google Cloudのプロジェクト作成や支払い情報の登録などをしていなくても使うことができます(すごい)。
組み込みのCloud Shell Editorが使える
シェル環境だからといってコマンドラインの操作だけしかできないわけではありません。VSCodeベースのCloud Shell Editorが組み込まれているため、不自由なくファイルの表示や編集が可能です。VSCode向けの拡張機能も利用可能です。
Cloud9のようなオンラインの統合開発環境としても使えそうですね。
ウェブでプレビューの機能
ウェブでプレビュー
の機能を使えばCloud Shell上でローカル実行されたウェブアプリケーションをシームレスにプレビューすることができます。
例えば、Viteのアプリ(Viteじゃなくてもなんでもいいです)をCloud Shell上でローカル起動して、
コンソール出力されるhttp://localhost:5173
をクリックするだけで、勝手に以下のようにアクセス用のURL経由で遷移してくれます。
ちなみに、このプレビュー用のURLを別のgoogleアカウントでログインした状態のブラウザで開いたところ、しっかり400エラーになりました。
永続ストレージが5GB
最初に述べた通り、クレカの登録も無しに無料で使えるにも関わらず、永続ストレージが5GBも用意されています(個人の感想ですが、googleのストレージ系サービスって太っ腹な気がします)。
用途にもよりますが、私は5GBもあれば十分かなと思いますが、拡張する機能は提供されていないことには注意が必要です。
最後に
いかがだったでしょうか?
使い始めるまでのハードルの低さを考えると、普段、Google Cloudを使ってない方でもCloud Shellを使う価値は十分にありそうではないでしょうか。
ローカルを汚さずにちょっとした技術検証を行なったり、ハンズオンなどの受講者側環境を揃えるのにもとても役立ちそうですね。
私は普段はAWSを使うことが多いので、Cloud ShellからAWSへ安全にアクセスする方法などもまたの機会に記事にしてみたいと思います。
以上です。