1、下载镜像
docker pull sebp/elk
2、生成容器
docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -p 5601:5601 -p 5044:5044 -p 9200:9200 -p 9300:9300 -it --name elk sebp/elk
5044 是 Logstash的端口
9200 是 Elasticsearch的端口
5601 是 Kibana的端口
3、需要修改 logstash 配置
进入 容器
docker exec -it elk /bin/bash
#修改文件
vi /etc/logstash/conf.d/02-beats-input.conf
#删除原来的 粘贴新的
input {
tcp {
port => 5044
codec => json_lines
}
}
output{
elasticsearch {
hosts => ["localhost:9200"]
}
}
4、重启elk
docker restart elk
5、测试访问
访问http://ip:5601 测试能不能打开页面
异常现象:启动ElasticSearch,报下面异常
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决:
1、修改max_map_count值
sysctl -w vm.max_map_count=262144
2、查看是否修改为262144
more /proc/sys/vm/max_map_count
3、重新启动ElasticSearch