0

Docker コンテナーでフラスコを使用しようとしていますが、複数の NIC の問題があるようです。

そのフラスコ コンテナーには 2 つの Docker ネットワークがあります。1 つはブリッジで、もう 1 つはオーバーレイです。ブリッジ IP に (外部クライアントまたは Docker ホストから) アクセスすると、Flask が応答します。しかし、(同じオーバーレイ ネットワークにある他のコンテナーから) オーバーレイ ネットワークの IP にアクセスしても応答しません。

app.py
`app.run(debug=True,host='0.0.0.0',port=80)`
docker-compose
ports: "5000:80"
net: "my-overlay-network"
command: "python app.py"
コンテナのIP
root@flask:/app# ip a
    inet 127.0.0.1/8 scope host lo
    inet 172.30.0.16/16 scope global eth0      <=== overlay IP
    inet 172.18.0.12/16 scope global eth1      <=== bridge IP
アクセスURL
  • 外部クライアント(作品)から
  • ドッカーホストから(作品)
  • 他のオーバーレイ ネットワーク コンテナーから (機能しません)
    • http://172.30.0.16/
    • fyi: これらのコンテナーは、nslookup でフラスコの IP を取得できるため、同じネットワーク内にあります。
環境
  • ドッカー 1.11.1
  • パイソン3.5.1
  • フラスコ 0.11
4

0 に答える 0