Help us understand the problem. What is going on with this article?

Proxy内環境でWindows10にGoogle Cloud PlatformSDKを導入する手順

前提

  • Windows10
  • Proxy配下のLANでの環境セットアップが必要

やりたいこと

Windows開発環境にGoogle Cloud PlatformSDK(gcloudコマンド)を導入したい.

セットアップのハマりどころ

  • Google Cloud SDK のインストーラ を用いるのが一般的だと思いますが、Proxy環境下ではインストール中にクラッシュします(!)
  • Proxyの設定がgcloud initからうまく行かないが,環境変数を設定することで,コマンド自体は使えるようになる
  • 予めインストールされていたPythonのバージョンによっては gcloudコマンドが実行できなくなる場合がある
    • Pythonプログラム内部でエラーが発生した場合にはPythonをアンインストールするなどすると動くようになる

導入方法

セットアップのハマりどころに書いてある理由のため、インストーラを利用せずセットアップする必要があリます。

環境変数追加手順
# ※GUIから設定する場合は、Windowsキーを押して,「env」と入力,「システム環境変数の編集」を押すことで変更しても良い
SETX /M PATH "%PATH%;C:\Program Files\google-cloud-sdk\bin;"
SETX HTTP_PROXY "http://yourproxy.domain.name:8000"
SETX HTTPS_PROXY "http://yourproxy.domain.name:8000"
  • 4. コマンドプロントの再起動
    • システム環境変数を SETX で書き換えた場合、再起動しないと有効にならないため
  • 5. gcloud auth login して任意のコマンドを実行
GCP認証
gcloud auth login

上記のコマンドを実行することで,ブラウザが立ち上がりますので,自分のアカウントでログインしていただき,許可を押してください.
すると,コマンドプロント画面に戻って任意のコマンドを利用することができるようになります.

  • 6. 動作確認

認証が成功すると、バケットの一覧を取得したり、GCEインスタンスの一覧を取得することができます。

コマンド確認
$> gsutil ls -p <your-project-id>
gs://test-bucket/
()

$> gcloud compute instances list --project test-project
NAME                                               ZONE               MACHINE_TYPE               PREEMPTIBLE  INTERNAL_IP  EXTERNAL_IP      STATUS
gke-standard-cluster-1-default-pool-xxxxxxxx-xxxx  asia-northeast1-a  n1-standard-1                           10.xx.x.x    35.xxx.xx.xx     RUNNING
gke-standard-cluster-1-default-pool-xxxxxxxx-xxxx  asia-northeast1-a  n1-standard-1                           10.xx.x.x    35.xxx.xxx.xx    RUNNING
gke-standard-cluster-1-default-pool-xxxxxxxx-xxxx  asia-northeast1-a  n1-standard-1                           10.xx.x.x    35.xxx.xxx.xx    RUNNING
()

コマンドが動いていることがわかりますね.

所感

  • プロキシの設定をgcloud initで行おうとするとうまく行かないが,ログインすればgcloudの諸コマンドは問題なく実行することができた
    • コマンドがちゃんと動くのは気持ち良い!
  • 環境構築難しい
future
ITを武器とした課題解決型のコンサルティングサービスを提供します
http://future-architect.github.io/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away