docker compose搭建elk 8.6.2

环境搭建

选用版本是比较新的版本 (ELK) 8.6.2 ,elk的环境做的还是比较好的又windows和Linux多个版本,并且开箱即用。本地直接下载官方软件也是可以的。最近在学习docker compose,就使用这个环境搭建一下。

前置条件

安装好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: elasticsearch
    environment:
      - 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:
      - elk

  kibana:
    image: docker.elastic.co/kibana/kibana:8.6.2  # 版本需与 ES 一致 
    container_name: kibana
    environment:
      - ELASTICSEARCH_HOSTS=http://elasticsearch:9200
    ports:
      - "5601:5601"
    networks:
      - elk
    depends_on:
      - elasticsearch

  logstash:
    image: docker.elastic.co/logstash/logstash:8.6.2
    container_name: logstash
    volumes:
      - ./logstash/config/logstash.conf:/usr/share/logstash/pipeline/logstash.conf  # 挂载配置文件 
    environment:
      - LS_JAVA_OPTS=-Xms512m -Xmx512m
    ports:7157
      - "5044:5044"  # Filebeat 输入端口
    networks:
      - elk
    depends_on:
      - elasticsearch

volumes:
  es_data:  # Elasticsearch 数据卷
    driver: local

networks:
  elk:  # 自定义网络确保服务互通
    driver: bridge

3. 创建logstash文件夹及配置

复制代码
mkdir -p logstash/config

echo '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: elasticsearch
    environment:
      - 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:
      - elk

  kibana:
    image: docker.elastic.co/kibana/kibana:8.6.2  # 版本需与 ES 一致 
    container_name: kibana
    environment:
      - ELASTICSEARCH_HOSTS=http://elasticsearch:9200
    ports:
      - "5601:5601"
    networks:
      - elk
    depends_on:
      - elasticsearch

  logstash:
    image: docker.elastic.co/logstash/logstash:8.6.2
    container_name: logstash
    volumes:
      - ./logstash/config/logstash.conf:/usr/share/logstash/pipeline/logstash.conf  # 挂载配置文件 
    environment:
      - LS_JAVA_OPTS=-Xms512m -Xmx512m
    ports:7157
      - "5044:5044"  # Filebeat 输入端口
    networks:
      - elk
    depends_on:
      - elasticsearch

volumes:
  es_data:  # Elasticsearch 数据卷
    driver: local

networks:
  elk:  # 自定义网络确保服务互通
    driver: bridge

3. 创建logstash文件夹及配置

复制代码
mkdir -p logstash/config

echo '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/


代码地址
docker compose搭建elk环境

相关推荐
lpruoyu6 小时前
【Docker进阶-03】存储原理
docker·容器
文静小土豆6 小时前
Docker 与 containerd 代理配置详解:镜像拉取速度慢的终极解决方案
运维·docker·容器
JY.yuyu8 小时前
Docker常用命令——数据卷管理 / 端口映射 / 容器互联
运维·docker·容器
lpruoyu9 小时前
【Docker进阶-06】docker-compose & docker swarm
运维·docker·容器
虾说羊10 小时前
docker容器化部署项目流程
运维·docker·容器
骇客野人11 小时前
通过脚本推送Docker镜像
java·docker·容器
liux352811 小时前
基于kubeadm部署Kubernetes 1.26.4 集群指南
云原生·容器·kubernetes
Zfox_12 小时前
CANN GE 深度解析:图编译器与执行引擎的后端优化策略、OM 文件结构与 Stream 调度机制
容器·节点小宝
人鱼传说14 小时前
docker desktop是一个好东西
运维·docker·容器
小章UPUP15 小时前
Kubernetes (K8s) 与 Podman 的比较
容器·kubernetes·podman