2016-09-06 8 views
0

特定の(パブリック)IP(11.11.11.20および11.11.11.21)にスクリプトバインディングを含む2つのコンテナをそれぞれ実行する必要があります。ドッキングホスト自体は10.10.10.222です。異なるDockerコンテナに異なるパブリックIPを割り当てます

私は私がip aを難読化され、このドッキングウィンドウ-compose.yml

version: '2' 
services: 
    nginx-0: 
    image: nginx:1.10 
    networks: 
     app_net: 
     ipv4_address: 11.11.11.20 

    nginx-1: 
    image: nginx:1.10 
    networks: 
     app_net: 
     ipv4_address: 11.11.11.21 

networks: 
    app_net: 
    driver: bridge 
    ipam: 
     driver: default 
     config: 
     - subnet: 11.11.11.20/30 

を書いた:

3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff 
    inet 10.10.10.222/27 brd 10.10.10.223 scope global eth1 
     valid_lft forever preferred_lft forever 
    inet 11.11.11.20/32 brd 11.11.11.20 scope global eth1:0 
     valid_lft forever preferred_lft forever 
    inet 11.11.11.21/32 brd 11.11.11.21 scope global eth1:1 
     valid_lft forever preferred_lft forever 

をそれが実行するすべてのソリューションがあります

すでに使用中住所私に語りましたこの?

ありがとうございます! Dominik

+0

これが問題の原因であるかどうかはわかりませんが、11.11.11.20ではなく11.11.11.22を使用しないでください。理由:11.11.11.20がネットワークアドレスであるため、このアドレスを任意のインターフェイスに割り当てるべきではありません。 11.11.11.20/30の唯一の使用可能なアドレスは11.11.11.21と11.11.11.22と11.11.11.21です。 11.11.11.20はネットワークID(バイナリ表現は '00'で終わる)で、11.11.11.23はブロードキャストアドレスです(バイナリ表現は '11'で終わります)。 – Olli

+0

お返事ありがとうございます!私はそれを試して、コンテナーのIP 21と22を使って試しました。nginx-0を起動できません:このプールに利用可能なアドレスはありません –

+0

サブネット:11.11.11.0/24 今、間違ったゲートウェイがあります:11.11.11.1 と私はホストのIPサブネットで固定ゲートウェイが必要です:10.10.10.111 どのようにそれを追加するか? –

答えて

1

11.11.11.20/30サブネット内のアドレスを有効な値に変更します。nginx-0およびnginx-1のアドレスは11.11.11.21および11.11.11.22である必要があります。アドレス11.11.11.20はサブネットワークアドレスであるため無効です。

また、メインインターフェイスのネットワーク10.10.10.222/27の外にあるブリッジされたインターフェイスのアドレスを使用しているようです。セカンダリネットワークのノードは、プライマリネットワークとセカンダリネットワークの両方にインターフェイス(IPアドレス)を持つルータがある場合にのみ、他のIPアドレスに到達できます。しかし、11.11.11.20ネットワークでは、このネットワークの利用可能なすべてのアドレスがnginxサーバーによって占有されているため、これを達成するのは難しいでしょう。ブリッジネットワークの場合、最も簡単な解決策は、プライマリネットワークのアドレスをnginxサーバに使用し、プライマリネットワーク10.10.10.222/27内に正しいゲートウェイアドレスを指定することです。代わりに、11.11.11.20/27のようなより大きなネットワークを使用して、両方のnginxサーバとルータのIPアドレスをそこに置くことができます。

関連する問題