🙆

Google Cloud Shellは素晴らしい

2021/09/08に公開

Google Cloud Shellをなぜ使わないのですか?

Google Cloud Platform(GCP)を使う人にもれなく付いてくるGoogle Cloud Shell(以降、Cloud Shell)ほど便利なものは無いでしょ。(知らんけど)
ということで、簡単に紹介します。

素晴らしいところ

Cloud Shellの素晴らしいところを挙げます。

ツールがインストールされている

gcloud、gsutil、bqコマンドは当たり前ですが、git、docker、kubectlコマンドがインストール済みです。Java、python、rubyもインストール済みです。

ある程度好きにツールをインストールできる

apt、pipコマンドでインストールできますし、好きなツールもインストールできます。ただCloud Shellを業務サーバとして使うのは無理です。(非アクティブな状態が20分続くとセッションが切れる)

インストール済みツール

全部は記載しませんが、主に以下のツールがインストール済みです。

ツール 備考
bind9 nslookupやdigコマンドなどDNS用コマンド
cpp C++コンパイルコマンド
cron 業務では使えない
curl データ転送コマンド
diffutils diffコマンドなど
docker dockerのコマンドツール
emacs エディター
git リポジトリツール
google-cloud-sdk gcloud,gsutil,bqコマンド
Java Java8,11がインストール済み
jq jsonフォーマットの操作コマンド
kubectl kubernetesのコマンドツール
mysql-client mysqlのクライアントツール
nano エディター
net-tools ifconfigコマンドなど
openssh sshコマンド
openssl SSL証明書関係のツール
perl 言わずもがな
php 言わずもがな
pigz gzファイルの圧縮解答
postgresql PostgreSQLのクライアントツール
powershell Microsoftのpowershell
python ver.2,3がインストール済み
python-pip pipも当然
ruby 言わずもがな
rubygems-integration 言わずもがな
sed テキストデータ処理ツール
sqlite sqliteのクライアントツール
telnet telnet
terraform Infrastructure as Code
tmux Shell分割
unzip zipファイル解凍
vim エディター
wget コンテンツダウンローダー
zip zipファイル圧縮

漏れやアップデートもあるかもしれないので、使用する際は実際に確かめてみてください。

ウェブ プレビュー

HTTPリクエストをリッスンするWEBアプリケーションをプレビューすることができます。
https://cloud.google.com/shell/docs/using-web-preview?hl=ja
このドキュメントの通り、SimpleHTTPServerを実行して試すとこんな感じでプレビューを見ることができます。

例えば、WEBアプリケーション開発時にCloud Shellでdockerコンテナを実行し、WEBアプリケーションのプレビューを確認することができます。

Cloud Shellエディター

Cloud Shellの「エディターを開く」をクリックすると、Cloud Shellエディターが起動します。起動させてみましょう。

「VSCodeやんけ!」…いえ、違います。ですがVSCodeの拡張機能が使えます。詳細は以下のリンクをご参照ください。
https://cloud.google.com/shell/docs/custom-extensions?hl=ja

VSCode相当のエディターをクラウドで使えるってことです。スゴいですね。

Cloud Code

Cloud Shellエディターを使い、テンプレートからアプリケーションを作成することができます。
メニューバーの「Find Command」からコマンドパレットを表示して、「New Application」を選択します。

ここでは、Cloud Run Applicationを選択してみます。このテンプレートはdockerで普通に使えると思います(未確認)。

作成するテンプレートのプログラム言語を選択します。

テンプレートが作成されますので、後は自分で修正など行っていきます。

終わりに

Google Cloud Shellを使えば、ローカルPCに開発環境を作らなくてもいいですし、有料になったDocker DesktopなんてローカルPCにインストール不要なんですよ。開発や検証には本当に便利と思いますので、大変オススメです。

Discussion