docker compose搭建elk 8.6.2
环境搭建
选用版本是比较新的版本 (ELK) 8.6.2 docker镜像为官方提供的
前置条件
安装好docker和 docker compose
1. compose环境文件夹
mkdir elk && cd elk
2. 创建compose文件
vim docker-compose.yaml
内容如下
version: '3.7'
services:elasticsearch:image: docker.elastic.co/elasticsearch/elasticsearch:8.6.2 # 官方镜像 container_name: elasticsearchenvironment:- discovery.type=single-node # 单节点模式 - xpack.security.enabled=false # 禁用安全认证(测试用)- bootstrap.memory_lock=true- ES_JAVA_OPTS=-Xms1g -Xmx1g # JVM 内存分配volumes:- es_data:/usr/share/elasticsearch/data # 数据持久化 ports:- "9200:9200"networks:- elkkibana:image: docker.elastic.co/kibana/kibana:8.6.2 # 版本需与 ES 一致 container_name: kibanaenvironment:- ELASTICSEARCH_HOSTS=http://elasticsearch:9200ports:- "5601:5601"networks:- elkdepends_on:- elasticsearchlogstash:image: docker.elastic.co/logstash/logstash:8.6.2container_name: logstashvolumes:- ./logstash/config/logstash.conf:/usr/share/logstash/pipeline/logstash.conf # 挂载配置文件 environment:- LS_JAVA_OPTS=-Xms512m -Xmx512mports:7157- "5044:5044" # Filebeat 输入端口networks:- elkdepends_on:- elasticsearchvolumes:es_data: # Elasticsearch 数据卷driver: localnetworks:elk: # 自定义网络确保服务互通driver: bridge
3. 创建logstash文件夹及配置
mkdir -p logstash/configecho 'input { beats { port => 5044 } } output { elasticsearch { hosts => ["http://elasticsearch:9200"] } }' > logstash/config/logstash.conf
4. 启动
docker compose up -d
前置条件
安装好docker和 docker compose
1. compose环境文件夹
mkdir elk && cd elk
2. 创建compose文件
vim docker-compose.yaml
内容如下
version: '3.7'
services:elasticsearch:image: docker.elastic.co/elasticsearch/elasticsearch:8.6.2 # 官方镜像 container_name: elasticsearchenvironment:- discovery.type=single-node # 单节点模式 - xpack.security.enabled=false # 禁用安全认证(测试用)- bootstrap.memory_lock=true- ES_JAVA_OPTS=-Xms1g -Xmx1g # JVM 内存分配volumes:- es_data:/usr/share/elasticsearch/data # 数据持久化 ports:- "9200:9200"networks:- elkkibana:image: docker.elastic.co/kibana/kibana:8.6.2 # 版本需与 ES 一致 container_name: kibanaenvironment:- ELASTICSEARCH_HOSTS=http://elasticsearch:9200ports:- "5601:5601"networks:- elkdepends_on:- elasticsearchlogstash:image: docker.elastic.co/logstash/logstash:8.6.2container_name: logstashvolumes:- ./logstash/config/logstash.conf:/usr/share/logstash/pipeline/logstash.conf # 挂载配置文件 environment:- LS_JAVA_OPTS=-Xms512m -Xmx512mports:7157- "5044:5044" # Filebeat 输入端口networks:- elkdepends_on:- elasticsearchvolumes:es_data: # Elasticsearch 数据卷driver: localnetworks:elk: # 自定义网络确保服务互通driver: bridge
3. 创建logstash文件夹及配置
mkdir -p logstash/configecho 'input { beats { port => 5044 } } output { elasticsearch { hosts => ["http://elasticsearch:9200"] } }' > logstash/config/logstash.conf
4. 启动
docker compose up -d
5. 访问验证
elasticsearch
http://localhost:9200/
账号:elastic
密码:elastic
kanaba
http://localhost:5601/
5. 访问验证
elasticsearch
http://localhost:9200/
账号:elastic
密码:elastic
kanaba
http://localhost:5601/