Выполнение команды logstash вне контейнера Docker - PullRequest
0 голосов
/ 12 февраля 2019

Я хочу выполнить команду Logstash, чтобы начать импорт в Elasticsearch без входа в контейнер ELK Docker.

Это не работает:

docker exec -it docker_elk_1 opt/logstash/bin/logstash -f /home/configs/logstash-logs.config

Хотя это покажет Successfully started Logstash API endpoint {:port=>9600}, но просто выйдет после.

Тем не менее, это будет работать, но я должен сначала войти в контейнер докера

docker exec -it docker_elk_1 bin/bash

Затем

opt/logstash/bin/logstash -f /home/configs/logstash-logs.config

Спасибо

docker-compose.yml

elk:
  image: sebp/elk
  volumes:
      - ${PWD}:/home/configs
  ports:
    - "5601:5601"
    - "9200:9200"
    - "5044:5044"

1 Ответ

0 голосов
/ 12 февраля 2019

Не знаю, понимаю ли я ... вы можете попробовать:

docker exec -it docker_elk_1 /bin/bash -c 'opt/logstash/bin/logstash -f /home/configs/logstash-logs.config'

или

docker-compose exec /bin/bash -c 'opt/logstash/bin/logstash -f /home/configs/logstash-logs.config'
...