Windows 10 Home の Docker で gcloud SDK 環境を構築して PC 起動後すぐに使える設定にする
目次
はじめに
「Windows マシンで gcloud CLI を使いたいが、毎回 PowerShell を開くのは面倒で、Linux シェルに慣れた操作感で使いたい」——そう感じているエンジニアは多いのではないでしょうか。本記事では、Windows 10 Home 上の Docker Desktop を使って gcloud SDK コンテナ環境を構築し、PC 起動から 10 秒で gcloud コマンドが打てる状態を作る手順を解説します。
コンテナをカスタマイズしてイメージとして保存することで、環境が再現可能になる点も大きなメリットです。gcloud 環境を Docker で管理したいエンジニアの方の参考になれば幸いです。
前提:Docker Desktop for Windows のインストールは完了していることを前提とします。未インストールの場合は、前回の記事「Windows 10 Home で Docker Desktop + WSL2 を使って Ubuntu 20.04 LTS を起動するまでの手順」をご参照ください。
使用ツール・環境
| カテゴリ | ツール・技術 | 役割・選んだ理由 |
|---|---|---|
| OS | Windows 10 Home | WSL2 + Docker Desktop で Linux 環境を実現 |
| コンテナランタイム | Docker Desktop for Windows | GUI 管理とコマンドラインの両方で操作可能 |
| ベースイメージ | gcr.io/google.com/cloudsdktool/cloud-sdk:latest | gcloud CLI が最初からインストール済みの公式イメージ |
| SSH クライアント | TeraTerm | コンテナに素早く SSH 接続するためのターミナルツール |
gcloud SDK コンテナ環境の構築手順
1. gcloud SDK イメージを取得する
課題:gcloud CLI が入ったベースイメージが必要。
解決策:Google 公式の Cloud SDK イメージを Docker Hub から pull する。
PowerShell を起動し、以下のコマンドを実行します。イメージサイズが大きいため、ネットワーク環境によっては数分かかります。
docker pull gcr.io/google.com/cloudsdktool/cloud-sdk:latest

2. コンテナを起動する
以下のコマンドでコンテナを起動します。-it -d でバックグラウンド起動、--name でコンテナ名を指定します。
docker run -it -d --name gcloud-config gcr.io/google.com/cloudsdktool/cloud-sdk:latest

3. コンテナのシェルにログインする
Docker Desktop の「Containers」タブから作成したコンテナを選択し、「CLI」ボタンをクリックしてシェルに接続します。

4. SSH サーバ・エディタをインストールする
課題:コンテナに外部から SSH 接続するためのサーバが必要。
解決策:openssh-server と vim をインストールする。
apt install ssh

apt install vim

5. SSH ログイン用ユーザを作成する
任意のユーザ名でユーザを作成し、sudo 権限を付与します。
adduser YOUR_USERNAME
gpasswd -a YOUR_USERNAME sudo


6. コンテナ起動時に sshd を自動起動するスクリプトを作成する
課題:WSL2 環境では systemctl で sshd を自動起動できない。
解決策:起動スクリプトを用意して docker run の引数として渡す。
vi init.sh
chmod 777 init.sh

init.sh に以下の内容を記述します。tail -f /dev/null でコンテナが終了しないようにします。
#!/bin/bash
service ssh start
tail -f /dev/null

7. カスタムイメージとして保存する
ここまでの設定を新しいイメージとして保存し、元のコンテナは削除します。
docker stop gcloud-config
docker commit gcloud-config mygcloud
docker rm gcloud-config

8. 自動起動オプション付きでコンテナを再起動する
--restart=always で PC 再起動後も自動起動します。-p で SSH 接続用のポートをフォワーディングします。
docker run -it -d -p 49153:22 --restart=always --name gcloud-config mygcloud ./init.sh

TeraTerm ショートカットで素早くログインする設定
1. デスクトップにショートカットを作成する
デスクトップを右クリックし、「新規作成」→「ショートカット」を選択します。

「参照」ボタンから ttermpro.exe を選択します。

プログラムのパスの後ろに、接続先・ユーザ名・パスワードを追記します。
"C:\Program Files (x86)\teraterm\ttermpro.exe" 127.0.0.1:49153 /user=YOUR_USERNAME /passwd=YOUR_PASSWORD

2. ショートカットから SSH 接続する
作成したショートカットをダブルクリックすると、SSH のホスト確認ダイアログが表示されます。「続行」をクリックします。

ショートカットに設定したユーザ名・パスワードが自動入力された状態でログインダイアログが表示されます。「OK」をクリックするとコンテナのシェルに接続できます。


gcloud 認証と GCP プロジェクトの初期設定
1. Google アカウントで認証する
以下のコマンドを実行すると、ブラウザ認証用の URL が表示されます。ブラウザでアクセスして Google アカウント認証を行い、発行されたコードをターミナルに入力します。
gcloud auth login




2. GCP プロジェクトを設定する
使用する GCP プロジェクト ID を設定します。
gcloud config set project YOUR_PROJECT_ID

ここまで設定が完了すれば、PC を再起動してもコンテナが自動起動します。ショートカットをダブルクリックするだけで gcloud コマンドが打てる状態となり、認証の再設定も不要です。
まとめ:Docker + TeraTerm で実現する gcloud 即時起動環境
本記事で解説した手順をまとめます。
- Google 公式の Cloud SDK イメージを使うことで、gcloud CLI のインストール作業が不要になる
docker commitでカスタムイメージを作成し、SSH・vim・ユーザ設定を永続化できる--restart=alwaysオプションで PC 再起動後もコンテナが自動起動する- TeraTerm ショートカットにパラメータを設定することで、ワンクリックで gcloud 環境にアクセスできる
gcloud auth loginとgcloud config set projectは初回のみ設定すればよい
次回は、構築した gcloud 環境を使って Cloud Shell から Text-to-Speech API を試す手順を解説します。







ディスカッション
コメント一覧
まだ、コメントがありません