コンテナ間で通信をさせたい
nginxや、php-fpmの連携や、
seleniumなどのブラウザアクセスのために、
それぞれの /etc/hosts
を書き換えたい。
2つの方法があります。
extra_hosts
任意の名前と任意のipで/etc/hostsを書き換える
extra_hosts: - "somehost:162.242.195.82" - "otherhost:50.31.209.229"
このように、ipに対して、任意の名前を書くことができる。
links
任意の名前と任意のコンテナで/etc/hostsを書き換える
extra_hosts: - "somehost" - "otherhost:renamedhost"
このとき、somehostに割り当てられたipアドレスを自動的に紐づけてくれる。
さらに、otherhostでアクセスするのは嫌だ、別な名前にしたいってときは :
でつなぐことで、別な名前になる。
この設定によって、 https://renamedhost
と書けば、otherhostのサービスにアクセスすることができる。
ちなみに、同一のdocker-compose.yml内であれば、コンテナ名でaliasが既に張られている。その名前を変える時にこのリネームは便利。