【发布时间】:2018-04-25 19:01:22
【问题描述】:
我是 Docker 世界的新手,正在尝试在 Docker 上运行 ElasticSearch 堆栈。我能够将 ELK 作为容器启动,并且它运行良好。
docker run -v /var/lib/docker/volumes/elk-data:/var/lib/elasticsearch \
-v /var/lib/docker/volumes/elk-data:/var/log/elasticsearch \
-p 5601:5601 -p 9200:9200 -p 5044:5044 \
--name elk sebp/elk
我正在使用 journalbeat 将指标转发到 ElasticSearch 服务并在 Kibana 中进行可视化。
我能够使用以下命令将 journalbeat 作为服务运行:
sudo docker service create --replicas 2 --mount type=bind,source=/opt/apps/shared/dev/docker/volumes/journalbeat/config/journalbeat.yml,target=/journalbeat.yml --mount type=bind,source=/run/log/journal,target=/run/log/journal --mount type=bind,source=/etc/machine-id,target=/etc/machine-id --constraint node.labels.nodename==devlabel --name journalbeat-svc mheese/journalbeat:v5.5.2
有没有办法可以将 ELK 作为服务运行?这样我们就可以启动 2 个容器 - 1 个在 Master Swarm 上,另一个在 Worker 节点上。
【问题讨论】:
标签: docker docker-swarm elastic-stack