Virtual URL, Service URL の名前解決(コンテナ版)
コンテナ版 Agent での Virtual URL, Service URL のホスト名の名前解決について説明します。
Virtual URL の名前解決
Front Agent は起動時にオプション指定したポート番号で接続を待ち受けています。このときクライアントから Virtual URL にアクセスするためにはもう一工夫が必要となります。
例えば、Virtual URL が http://myservice.local
で クライアントプログラムが同一ホスト上にある場合、 ホストの /etc/hosts
ファイルに以下を追加してください
myservice.local 127.0.0.1
これによりホスト上から http://myservice.local:port/path/
の URL にアクセスする際に Front Agent を経由して通信が可能になります。この方法以外にも、DNS や dnsmasq を使って名前解決することももちろん可能です。
Service URL の名前解決
Back Agent から Serivce URL にアクセスさせるためにはホスト名の名前解決が必要です。
なお、Docker ではコンテナ起動時にホストの DNS 設定がそのまま引き継がれます。
これとは別に名前解決をおこないたい場合などは、--dns
や --add-host
のオプションを必要に応じて設定ください。
-
特定のホスト情報を追加する場合
$ docker run --restart=unless-stopped --name myagent --add-host myservice.local:192.168.0.2 ...
-
DNS を指定する場合
$ docker run --restart=unless-stopped --name myagent --dns 10.16.0.8 ...