iptables で docker の変数 ip を処理する

iptables で docker の変数 ip を処理する

私の実稼働環境では、同じホスト上のデータベースなどのバックエンド サービスに接続する必要がある Docker のアプリがいくつかあります。これらの接続を受け入れるには、iptables で例外を作成する必要があることがわかりました。

ただし、docker ネットワークの IP 範囲は再起動ごとに異なります。最初は 172.18.0.0/24 でしたが、その後 172.17.0.0/24 と 172.20.0.0/24 になり、現在の IP は 192.168.172.2 と 192.168.192.3 です。

コンテナ内から Docker トラフィックを確実かつ安全に受け入れて、mariadb を実行するにはどうすればよいでしょうか?

編集:答えはIPAM 構成の指定インターフェースにアタッチする方がエレガントに思える

答え1

2 つのオプション:

初め

docker0特定の IP 範囲ではなく、インターフェースからのアクセスを許可します。

iptable -A INPUT -i docker0 -dport 3306

2番

データベースをコンテナに移動します。

ネットワークという名前のDockerを作成する

すべてのコンテナが名前付きネットワークに接続されていることを確認します。その後、他のコンテナ (同じネットワーク上) から名前でデータベース コンテナにアクセスできるようになります。

外部からデータベースにアクセスする必要がある場合は、ポートをマップし、データベースを保護するために必要な iptables ルールを設定できます。

関連情報