エンジニアのひよこ_level10

毎日更新してた人。たまに記事書きます。

docker-composeで/etc/hostsを書き換える方法【504日目】

コンテナ間で通信をさせたい

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が既に張られている。その名前を変える時にこのリネームは便利。