запуск filebeat на докере в Ubuntu - PullRequest
0 голосов
/ 14 апреля 2019
  sudo docker run docker.elastic.co/beats/filebeat:7.0.0 setup -E setup.kibana.host=localhost:5601 -E output.elasticsearch.hosts=["localhost:9200"]

Я хочу запустить filebeat на докере сластиком поиска, но я получаю эту ошибку:

Exiting: Couldn't connect to any of the configured Elasticsearch hosts. Errors: [Error connection to Elasticsearch http://localhost:9200: Get http://localhost:9200: dial tcp 127.0.0.1:9200: connect: connection refused]

Я не нашел для этого полезного решения ...

1 Ответ

0 голосов
/ 15 апреля 2019

С точки зрения контейнера, localhost сам по себе не является хост-машиной, на которой он работает, поэтому он не может подключиться кasticsearch.

Вам необходимо запустить контейнер filebeatв сети хоста или создайте для нее пользовательскую сеть и подключите к этой сети и filebeat, иasticsearch.

Пример:

$ sudo docker network create mynetwork --driver bridge
$ sudo docker run -d -p 9200:9200 -p 9300:9300 --net=mynetwork --name elasticsearch -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.0.0
$ sudo docker run -d --name kibana --net=mynetwork -p 5601:5601 kibana:7.0.0
$ sudo docker run --net=mynetwork --name filebeat docker.elastic.co/beats/filebeat:7.0.0 setup -E setup.kibana.host=kibana:5601 -E output.elasticsearch.hosts=["elasticsearch:9200"]
...