ショコラ
ドッカーコンポーズでネットワークを指定してIPアドレスを固定化するには?
「docnetwork create –subnet {ネットワークアドレス}/{マスク} {名前}」でネットワークを作成する。コンテナを起動するときに ネットワーク と IPアドレス を指定する。
もっさん先輩
①ドッカーネットワークを作成する。
docnetwork create --subnet {ネットワークアドレス}/{マスク} {ネットワークの名前}
②ドッカーネットワークを確認する。
docker network inspect {ネットワークの名前}
③ドッカーネットワークを削除する。
docker network rm {ネットワークの名前}
④コンテナにネットワークとIPアドレスを割り振る。
docker run --network {ネットワークの名前} --ip {割り振るIPアドレス} -d {コンテナ名}
手順
- 192.168.100.0/24 のネットワークアドレスに answorz.com_network という名前を付けます。
docker network create --subnet 192.168.100.0/24 answorz.com_network
- IPアドレスを 192.168.100.2 に設定して httpdコンテナを起動します。
docker run --network answorz.com_network --ip 192.168.100.2 -d httpd
- IPアドレスを 192.168.100.3 に設定して busyboxコンテナを起動します。
docker run --network answorz.com_network --ip 192.168.100.3 -it busybox
- busyboxコンテナから ping で httpdコンテナに疎通するか確認します。
ping 192.168.100.2
sed -i "1i host all all 192.168.100.2/32 trust" pg_hba.conf
/ # ping 192.168.100.2
PING 192.168.100.2 (192.168.100.2): 56 data bytes
64 bytes from 192.168.100.2: seq=0 ttl=64 time=0.112 ms
以上
シチュエーション
PostgreSQLコンテナでアクセス元のIPアドレス(コンテナ)で制限する為に、ネットワークを定義しIPアドレスを固定したい。