2016-08-15 12 views
1

インターネット帯域幅の懸念をクラウドコンピュータにプッシュするために、私はドッカーコンテナをリモートドッカーマシンで実行します。あなたがかなり遅いインターネットを持っているとき、この種のセットアップはとても便利です。私の問題は、コンテナのホストを簡単に判断する方法がわからないことです。ドッカーコンテナがリモートドッカーマシン上で実行されているのか、ドッカーエンジンでローカルに実行中であるのかをどうやって判断しますか?

これは私がそれを決定する方法である:、

を実行し、このdocker run -d -p 8000:80 nginxと訪問 - >localhost:8000を。それがnginxのデフォルトページを返す場合、私はそれがドッカーコンテナをローカルで実行していることを知っています。

localhostをdocker-machine ipに置き換えてnginxページを取得すると、コンテナがリモートシステムにあることがわかります。

+2

'docker run'コマンドが対象とするホストを知りたいですか?おそらく 'docker-machine ls'は現在アクティブなマシンを表示します。 –

+1

あなたの質問にちょっと混乱します。何を探していますか?私が見ることのできるところから、ポートがコンテナのポート80をホストの8000にマップする '-p'を実行していることがわかります。あなたがlocalhost:8000またはmachine-ip:8000のどちらかを実行すると仮定します –

+0

@AndreasJägleはいホストドッカーがどのターゲットを実行しているか知りたいです。私はドッカーマシンlsを試しましたが、リモートホストマシンが稼動していたときに、ドッキングコンテナがローカルホスト上に存在することがありました。 –

答えて

1

docker CLIは、クライアント/サーバアーキテクチャのクライアントの半分です(dockerdまたはそれ以前のバージョンdocker daemonが残りの半分です)。 docker-machineを使用すると、別のホストに接続するようにdockerに指示する$DOCKER_HOSTなどの環境変数を更新しています。デフォルトでは、ローカルホスト上のソケットに接続します。 $DOCKER_HOSTの値はそれを上書きし、CLIフラグdocker -H ...は両方を上書きします。

予期しないホストでコンテナをスピンアップさせる最も一般的な理由は、$DOCKER_HOSTの設定/設定を忘れた場合です。

関連する問題