Dockerのhost.docker.internalとは? 他のContainerと通信をする方法

Docker_internal

こんにちはフロントエンドエンジニアのまさにょんです!

今回は、Dockerのhost.docker.internalと、他のContainerと通信をする方法について解説していきます。

Dockerのhost.docker.internalとは?

Dockerのhost.docker.internalとは、Docker Desktop for xxで利用できる、Containerから参照する場合のhostを指すドメインです。

つまり、ContainerからHost上のサービスにアクセスする際に、このhost.docker.internalは利用できます。

注意事項

このhost.docker.internalは、MacやWindowsのDocker Desktop環境でしか使用できないことに注意です。

これを使用するのは、開発環境でのみ使用するようにした方がいいです。

Docker Container間の通信は、Docker Networkを使用するのがオススメ

host.docker.internalでローカル環境を経由し、他のDocker Containerへアクセスする方法がありますが、

この方法は、Docker Desktop系の一部環境でしか有効でないためオススメできません。

Docker Container間の通信は、Docker Networkを使用するのがオススメです。

以前に、Docker Networkを利用した Container間での通信をする方法について解説しているので、詳細は、こちらをご参照ください。

Dockerの学習・参考書

参考・引用

  1. ローカル環境の異なるDocker Compose間の通信をhost.docker.internalで解決する
  2. Docker | host.docker.internal でコンテナからホスト上のサービスにアクセスする

最近の投稿