VSCode の Remote Development を使って、Google の Cloud Shell に ssh で接続して開発を行う方法です。
macOS および Windows10 でそれぞれ手順が少し異なります。また、Windows10 では Cloud Shell への接続に WSL(Windows Subsystem for Linux) を使用します。1
手順
1. gcloud
コマンドを準備する
Google Cloud SDK をインストールします。
macOS は通常の手順で、Window 10 は Ubuntu の手順などに従って WSL 内でインストールを行います。その後、gcloud
コマンドが使えることを確認します。
2. Cloud Shell に ssh接続できることを確認する
$ gcloud cloud-shell ssh
2-1. (Windows 10のみ)~/.ssh/google_compute_engine
を移動する
Cloud Shell に ssh したあと、~/.ssh/google_compute_engine
に生成されている秘密鍵をWSLからWindows側の適当な場所に移動させておきます。
3. VSCode に拡張機能 「Remote - SSH」 をインストールする
4. ~/.ssh/config
を編集する
下記のように設定を追加します。User
とIdentityFile
など、適宜内容を書き換えること。
Mac
Host cloudshell
ProxyCommand gcloud cloud-shell ssh --ssh-flag='-W localhost:22'
User CloudShellのユーザー名
IdentityFile ~/.ssh/google_compute_engine
StrictHostKeyChecking no
Windows 10
Host cloudshell
ProxyCommand C:\Windows\system32\wsl.exe gcloud cloud-shell ssh --ssh-flag='-W localhost:22'
User CloudShellのユーザー名
IdentityFile 手順2-1.で移動させたフォルダ\google_compute_engine
StrictHostKeyChecking no
5. VSCode から Cloud Shell を開く
VSCodeの左下の青いボタンか、F1キーを押して「Remote-SSH: Connect to Host...」を選択する。
その後、「cloudshell」を選択する。
参考
動画でも使用されているStrictHostKeyChecking
、UserKnownHostsFile
は警告メッセージを非表示にするための設定のようです。
また、動画ではUser
を記述していませんが、ローカルのユーザー名とCloud Shellのユーザー名が異なる場合に必要です。
-
Windows版 Google Cloud SDK には ssh用ツールとして
putty.exe
が同梱されており、手順4.で設定する-W
オプションが使用できないため ↩