2017-05-01 7 views
2

最初から始めます。ドッカーインスタンスに再接続する方法

  1. AzureにドッカーをインストールしたUbuntuマシンを作成しました。
  2. 先頭に2つのドッキング用コンテナを作成しました。以前は管理用タスク用のドッカーマシンを使用していました。
  3. 私はコンピュータを変更したため、新しいコンピュータから接続する必要があります。

    PS C:\WINDOWS\system32> docker-machine ssh vm name 
    Host does not exist: "vm name". 
    

    マシンが実行されているが、私は推測するだろう:私は既存のコンテナにdocker-machine cdmdletをしようとしたとき、私は私の紺碧のサブスクリプション

を追加しました

  • は、しかし、私は次のエラーメッセージを持っています私は、接続に使用された証明書を再作成する必要があります。

    はノー運と、次の試してみた:私は、もはや古いマシンへのアクセスを持っていない

    PS C:\WINDOWS\system32> docker-machine regenerate-certs vm name 
    Regenerate TLS machine certs?  Warning: this is irreversible. (y/n): y 
    Regenerating TLS certificates 
    Host does not exist: "vm name" 
    

    誰も同じ状況にいますか? ご迷惑をおかけしておりません。

  • +1

    ここでは「VM名」を使用していますか、VMの本名を置き換えていますか? – johnharris85

    +0

    こんにちはFrancois VMの本当の名前を補うだけで、あなたの疑問を想像してくれるでしょう。マシン名に空白がないことを確認してください。 – cdanvergara

    答えて

    1

    あなたはジェネリックドライバを使用してマシンを再作成する必要があります:

    docker-machine create \ 
        --driver generic \ 
        --generic-ip-address=203.0.113.81 \ 
        --generic-ssh-key ~/.ssh/id_rsa \ 
        vm 
    

    はそれに応じて情報を交換してください。

    これは、ターゲットインスタンス上のデータを削除するのではなく、マシンに接続するように設定するだけでなく、新しい証明書を生成してインスタンスと通信できるようにすることです。

    +0

    こんにちはtcnj 回答ありがとうございました!、別の解決方法がありますか、またはどのように私はコンテナ内の既存のデータを保持することができますか?前もって感謝します! – cdanvergara

    +0

    これは既存のデータを保持します。 SSHを使用して接続し、証明書をローテーションしてから再接続します。ジェネリックドライバーは、ドッカーを既に持っているかもしれないし、すでに持っていない既存のマシンを使うように設計されています。 – tcnj

    +0

    こんにちはtcnj、説明のおかげで!私は彼が提案したようにコマンドを試しましたが、次のエラーメッセージが表示されます:事前作成でエラーが発生しました 作成されたインスタンスのオペレーティングシステムを検出しています... SSHが利用可能になるのを待っています... プロビジョニングを検出中... エラーの検出マシン:エラー検出OS:OSタイプが認識されない – cdanvergara

    関連する問題