gcloud auth login したときに localhost:8085に接続できない!といってエラーになる場合BROWSER環境変数があるとうまくいった。原因は知らない。
タイトルで全てが説明されているので後は蛇足です。
環境
M1 MacBook Air + macOS Big Sur 11.0.1 + Terminal.app + zsh + デフォルトブラウザはSafari の場合です。いろんなところに罠があるので賞味期限の短い話題ですね。なぜ Terminal.app と Safari かといえば、新しいMacを買うとしばらくはなるべく純正品で生活しようというライフサイクルになっているからです。
gcloud コマンドのバージョンはこんな感じ。
gcloud --version
Google Cloud SDK 319.0.0
bq 2.0.62
core 2020.11.13
gsutil 4.55
起きていたこと
タイトル通りです。gcloud auth login
とかしたとき、ブラウザで認証を行うとき、最後にタイムアウトしてしまいます。localhost:8085
に接続できないといって怒られるのですが、localhost:8085
はポートは空いてるしリダイレクトも動作していると思われる。なぜ。
回避策
Google Chromeを使う BROWSER
環境変数を設定したらうまくうごく様になった。なぜ。
% BROWSER=open
% gcloud auth login
どうしてもダメな場合はサーバで環境設定するときのように gcloud auth login --no-launch-browser
してブラウザから手動で認証コードを取得するとよさそう。BROWSER環境変数設定するとうまくいく理由はわかってない。面白いですね。たぶんBROWSER環境変数がない場合に gcloud がブラウザを直接開いたりして、その場合にプロセス間通信や別プロセス起動した時の戻り値の取得とか何かそういうアレがあるのだろう、と想像はしています。
Author And Source
この問題について(gcloud auth login したときに localhost:8085に接続できない!といってエラーになる場合BROWSER環境変数があるとうまくいった。原因は知らない。), 我々は、より多くの情報をここで見つけました https://qiita.com/ma2saka/items/6b9b3f5a1d5110735b67著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .