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 首次运行(生成初始配置)

关键步骤:首次启动后控制台会输出安全配置信息(如密码、证书),需要保存。
notion image

2.3 数据持久化配置

2.4 最终启动命令(带数据卷挂载)

2.5 重要配置修改

文件:/work/elk8.4.3/elasticsearch/config/elasticsearch.yml
安全说明:Elasticsearch 8+ 默认启用安全功能,必须使用 HTTPS 访问。
密码x8*35vZx-aDxvRCIizaf
用户名elastic
notion image
访问成功
notion image

3. Kibana 部署

3.1 拉取镜像

3.2 首次运行

3.3 数据持久化配置

3.4 生成服务令牌

3.5 Kibana 配置

文件:/work/elk8.4.3/kibana/config/kibana.yml

3.6 最终启动命令


4. Logstash 部署

4.1 拉取镜像

4.2 初始运行和数据准备

4.3 Logstash 配置

文件:/work/elk8.4.3/logstash/config/logstash.yml

4.4 Pipeline 配置

文件:/work/elk8.4.3/logstash/pipeline/logstash.conf

4.5 最终启动命令


5. Filebeat 部署

5.1 拉取镜像

5.2 初始运行和数据准备

5.3 Filebeat 配置

文件:/work/elk8.4.3/filebeat/filebeat.yml

5.4 最终启动命令


关键知识点总结

安全特性

  • Elasticsearch 8+ 默认启用安全功能
  • 必须使用 HTTPS 访问
  • 需要配置证书和认证信息

网络配置

  • 所有组件使用同一 Docker 网络
  • 容器间使用容器名通信
  • Filebeat 使用 host 网络模式

数据流

常见问题

  1. 权限问题:确保所有数据目录属主为 1000:1000(Elasticsearch 用户)
  1. 证书路径:各组件需要正确配置证书路径
  1. 网络连通:确保容器在同一个网络,并能解析容器名

注意:文档中存在一些密码和IP地址需要根据实际环境修改,部署时请使用自己环境中的实际值。
Loading...