質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.82%

docker-machineコマンドでのGCEのインスタンス立ち上げ時に可能なSSH接続が見つからない問題

受付中

回答 0

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 452

ds_hacks

score 4

前提・実現したいこと

docker-machineを使って、ローカル環境からクラウド上にdocker環境を構築し、コンテナを起動しようとしています。
docker-machineによるインスタンス起動時にSSH接続を行うために、GoogleCloudPlatformの[IAMと管理]->[サービスアカウント]から、オーナー権限のアカウント及びアカウントに紐づくJSON鍵を生成し、jsonファイルをローカルの所定のフォルダに格納しました。
その後、下記のコードにて環境変数の設定(および.bashrcの更新)とdocker-machineコマンドを実行したのですが、
数回試しても可能なSSH接続が見つからずタイムアウトが発生します。

どなたかお力添え頂けると助かりますm(__)m

該当のソースコード

$ export GOOGLE_APPLICATION_CREDENTIALS=<<jsonファイルの完全パス>>
$ docker-machine create -d google --google-project <<プロジェクトID>> --google-preemptible \
  --google-zone asia-east1-a --google-machine-type "g1-small" vm01

発生している問題・エラーメッセージ

Running pre-create checks...
(test2) Check that the project exists
(test2) Check if the instance already exists
Creating machine...
(test2) Generating SSH Key
(test2) Creating host...
(test2) Opening firewall ports
(test2) Creating instance
(test2) Waiting for Instance
(test2) Uploading SSH Key
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Error creating machine: Error detecting OS: Too many retries waiting for SSH to be available.  
Last error: Maximum number of retries (60) exceeded

補足

SSH接続には失敗しますが、インスタンスは生成されています。(GCPから確認済)
但し下記コードでも同様にSSH接続は失敗します。

$ docker-machine ssh vm01


★手動でSSH接続を行う方法は成功します。本質問では、GOOGLE_APPLICATION_CREDENTIALSの設定とdocker-machineの実行によるインスタンス起動及びSSH接続を期待しています。

バージョン情報

OS: Ubuntu18.04 LTS
docker-ce:19.03.2
docker-machine:0.15.0

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正の依頼

  • yoorwm

    2019/10/11 10:23

    はー。こんなん出来るのか、というレベルで見てますが
    https://qiita.com/daisukeoda/items/df2f3de1ffe73956977c
    からすると、
    eval $(docker-machine env myvm)
    で、環境変数がセットされているか?という所と、ファイアウォールで8000番ポートを公開しているか?という辺りはどうでしょうか?

    キャンセル

  • yoorwm

    2019/10/11 10:26

    っと、8000番というのはコンテナのポートの話で、今回の話とは関係ないようでした。スイマセン。

    キャンセル

まだ回答がついていません

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.82%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る