基于centos
1.下载elasticsearch镜像:
docker pull docker.elastic.co/elasticsearch/elasticsearch:6.7.1
docker tag 容器id elasticsearch:6.7.1
docker run -d –name elastic -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" e2667f5db289
2.下载kibana镜像
docker pull docker.elastic.co/kibana/kibana:6.7.1
docker tag 容器id kibana:6.7.1
docker run -it -d –name kibana -p 5601:5601 kibana:6.7.1 启动容器
docker exec -it 容器id bash 进入容器运行命令
vi config/kibana.yml 修改容器连接的默认elasticsearch地址
server.host: "0.0.0.0"
elasticsearch.hosts: [ "http://172.17.0.1:9200" ] //因为elasticsearch也部署在另一个docker里,所以连接ip为172.17.0.1
退出容器并重启
3.下载filebeat镜像
在输出日志文件的系统上部署
docker pull docker.elastic.co/beats/filebeat:6.7.1
docker tag 容器id filebeat:6.7.1
3.1 log方式收集
修改filebeat.yml path为容器内日志地址,output输出到elasticsearch
启动filebeat: docker run -u root –name filebeat -d -v /usr/local/filebeats6.7.1/filebeat.yml:/usr/share/filebeat/filebeat.yml -v /usr/local/filebeats6.7.1/logs/:/usr/share/filebeat/logs filebeat:6.7.1
第一个 -v 将本地filebeat配置文件挂载到容器
第二个 -v 是将本地日志目录挂载到容器
如果进入容器出现permission denied权限问题,可在启动命令加 -u root 指定root用户运行
filebeat.yml其它参数详解: scan_frequency: 10s 检测文件更新默认10秒 tail_files: false true: 从文件尾部监控新增内容,默认false
3.2 docker方式收集
filebeat.yml: multiline合并多行日志,pattern正则以时间戳开始
filebeat.inputs: - type: docker containers.ids: - '*' multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}' multiline.negate: true multiline.match: after multiline.timeout: 10s processors: - add_docker_metadata: ~ output: elasticsearch: hosts: ["172.17.0.1:9200"]
启动命令:
docker run -u root --name filebeat -d -v /usr/local/filebeats6.7.1/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro -v /var/lib/docker/containers:/var/lib/docker/containers:ro -v /var/run/docker.sock:/var/run/docker.sock:ro filebeat:6.7.1
4. 访问kibana 界面并设置索引即可搜索数据,实时日志。
原文链接:https://blog.csdn.net/u011385940/article/details/89189494?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171836884016800182130287%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=171836884016800182130287&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-15-89189494-null-null.nonecase&utm_term=docker%E9%83%A8%E7%BD%B2