Docker 部署 ELK
type
Post
status
Published
date
Feb 24, 2026
slug
summary
tags
运维
docker
category
知行合一
icon
password
概述
ELK 栈是由 Elasticsearch、Logstash 和 Kibana 组成的日志管理解决方案,使用 Docker 部署 ELK 8.4.3 版本的完整流程。
1. 网络配置
创建 Docker 网络
说明:创建自定义网络便于容器间通信,确保 ELK 各组件在同一网络中。
2. Elasticsearch 部署
2.1 拉取镜像
2.2 首次运行(生成初始配置)
关键步骤:首次启动后控制台会输出安全配置信息(如密码、证书),需要保存。

2.3 数据持久化配置
2.4 最终启动命令(带数据卷挂载)
2.5 重要配置修改
文件:
/work/elk8.4.3/elasticsearch/config/elasticsearch.yml安全说明:Elasticsearch 8+ 默认启用安全功能,必须使用 HTTPS 访问。
密码x8*35vZx-aDxvRCIizaf
用户名elastic

访问成功

3. Kibana 部署
3.1 拉取镜像
3.2 首次运行
3.3 数据持久化配置
3.4 生成服务令牌
3.5 Kibana 配置
文件:
/work/elk8.4.3/kibana/config/kibana.yml3.6 最终启动命令
4. Logstash 部署
4.1 拉取镜像
4.2 初始运行和数据准备
4.3 Logstash 配置
文件:
/work/elk8.4.3/logstash/config/logstash.yml4.4 Pipeline 配置
文件:
/work/elk8.4.3/logstash/pipeline/logstash.conf4.5 最终启动命令
5. Filebeat 部署
5.1 拉取镜像
5.2 初始运行和数据准备
5.3 Filebeat 配置
文件:
/work/elk8.4.3/filebeat/filebeat.yml5.4 最终启动命令
关键知识点总结
安全特性
- Elasticsearch 8+ 默认启用安全功能
- 必须使用 HTTPS 访问
- 需要配置证书和认证信息
网络配置
- 所有组件使用同一 Docker 网络
- 容器间使用容器名通信
- Filebeat 使用 host 网络模式
数据流
常见问题
- 权限问题:确保所有数据目录属主为 1000:1000(Elasticsearch 用户)
- 证书路径:各组件需要正确配置证书路径
- 网络连通:确保容器在同一个网络,并能解析容器名
注意:文档中存在一些密码和IP地址需要根据实际环境修改,部署时请使用自己环境中的实际值。
Loading...