コンテナへの外部アクセス、ポートマッピング

コンテナへの外部アクセス

容器は、外部アプリケーションでもこれらにアクセスすることができ、あなたがすることができ作るために、いくつかのネットワークアプリケーションを実行できる-Pか、-pポートマッピングパラメータを指定します。

場合-Pマーカー、ドッカーは、ランダムにマッピング49000~49900容器オープンネットワークポートの内部にポート。

使用すると、docker container lsローカルホストの49155は、容器のポート5000にマッピングされ、見ることができます。この場合、コンテナが提供するウェブアプリケーションインターフェースにアクセスするためのマシンアクセスポート49155。

$ docker run -d -P training/webapp python app.py

$ docker container ls -l
CONTAINER ID  IMAGE                   COMMAND       CREATED        STATUS        PORTS                    NAMES
bc533791f3f5  training/webapp:latest  python app.py 5 seconds ago  Up 2 seconds  0.0.0.0:49155->5000/tcp  nostalgic_morse

同様に、あなたができるdocker logs情報アプリケーションコマンドを表示します。

$ docker logs -f nostalgic_morse
* Running on http://0.0.0.0:5000/
10.0.2.2 - - [23/May/2014 20:16:31] "GET / HTTP/1.1" 200 -
10.0.2.2 - - [23/May/2014 20:16:31] "GET /favicon.ico HTTP/1.1" 404 -

-pあなたは、指定されたポートは、コンテナにバインドすることができる唯一の上、マッピングするポートを指定し、することができます。サポートされているフォーマットがありますip:hostPort:containerPort | ip::containerPort | hostPort:containerPort

すべてのマッピングインターフェイスアドレス

使用hostPort:containerPort形式は、容器のポート5000にローカルポート5000にマッピングを行ってもよいです

$ docker run -d -p 5000:5000 training/webapp python app.py

このとき、デフォルトではすべてのインターフェイス上のすべてのローカルアドレスをバインドします。

指定されたポート指定されたアドレスにマッピングされました

あなたは使用することができip:hostPort:containerPort、このようなローカルホストアドレス127.0.0.1として、特定のアドレスマップを指定するために使用される形式を

$ docker run -d -p 127.0.0.1:5000:5000 training/webapp python app.py

ポートは、任意の指定されたアドレスにマッピングされました

使用ip::containerPortコンテナポート5000への結合localhostのポートのは、ローカルホストが自動的にポートを割り当てます。

$ docker run -d -p 127.0.0.1::5000 training/webapp python app.py

また、使用することができますudp指定するタグをudpポートを

$ docker run -d -p 127.0.0.1:5000:5000/udp training/webapp python app.py

地図を見るのポート設定

使用するdocker port現在のポート設定のマッピングを表示するために、あなたはまた、アドレスバインディングを表示することができます

$ docker port nostalgic_morse 5000
127.0.0.1:49155.

注意:

  • 容器と、自身の内部ネットワークのIPアドレスを有している(使用さdocker inspectれるすべての変数を取得してもよいが、ドッカーは、ネットワークの可変構成を有することができます。)

  • -p タグは、複数のポートをバインドするために複数回使用することができます

例えば

$ docker run -d \
    -p 5000:5000 \
    -p 3000:80 \
    training/webapp \
    python app.py

おすすめ

転載: www.cnblogs.com/justart/p/11687287.html