にサービス名を使用してlogdriver(fluentd)からログインできない:私がドッキングウィンドウで、次のセットアップを持っているコン
- アプリケーション(httpd)が
- Fluentd
- ElasticSearch
- Kibana
アプリケーションのログドライバの設定では、フルーテッドコンテナについて説明しています。ログはESに保存され、木場に表示されます。
logdriverは、このように構成されている場合、それは動作します:
web:
image: httpd
container_name: httpd
ports:
- "80:80"
links:
- fluentd
logging:
driver: "fluentd"
options:
fluentd-address: localhost:24224
tag: httpd.access
そしてfluentdは、ホストのポート24224上の露出ポート24224をマッピングしています。
fluentd:
build: ./fluentd
image: fluentd
container_name: fluentd
links:
- "elasticsearch"
ports:
- "24224:24224"
しかし、私はフルハンドをホストネットワークに公開したくありません。私はこのように(私は唯一のホストネットワーク上のアプリとkibanaをマッピングしたい)ドッカネットワーク内部のプライベート "、それを維持したい:
fluentd:
build: ./fluentd
image: fluentd
container_name: fluentd
links:
- "elasticsearch"
ポート24224はまだ(dockerfileで)公開されているが、それはホストネットワークにマップされていません。今、私は私のアプリのlogdriverの設定を変更したい: ログ: ドライバー:「fluentd」 オプション: fluentdアドレス:fluentd:24224 タグ:httpd.access
のでfluentdでの名前です。彼らは同じネットワークにありますが、アプリはそれを接続することはできません。ログオプションは、コンファイルに「link'、オプションの前に実行されるため
failed to initialize logging driver: dial tcp: lookup fluentd
は多分これですか?
これを行う方法はありますか?
よろしくお願いいたします。ありがとう。 – lvthillo