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环境

相关推荐
上学的小垃圾2 小时前
基于docker安装MySQL(openEuler系统)
linux·mysql·docker·容器
小小程序员.¥10 小时前
docker中redis集群配置
docker
Asum1ta11 小时前
Kubernetes Namespace 命名空间管理实战:资源隔离、默认命名空间与常用命令
网络·容器·kubernetes
java_logo13 小时前
Docker 部署 HertzBeat:轻松搭建无代理实时监控与告警平台
运维·docker·容器·监控告警·部署教程·hertzbeat·轩辕镜像
子建莫敌14 小时前
Docker 速查手册
docker·容器
雾隐隐o15 小时前
Docker 镜像归档与容器管理
java·docker·eureka
独码侠15 小时前
第02篇·30 分钟跑通 Dify:Docker 一键部署,5 步上线首个 AI 应用
人工智能·docker·容器·dify
纪伊路上盛名在15 小时前
了解一点Docker
java·docker·容器
索西引擎16 小时前
基于 Docker 容器化的 MySQL 数据库部署与访问控制机制研究
数据库·mysql·docker
Ningcode_cloud16 小时前
什么是CICD? GitLab + Jenkins 持续集成实战部署手册
运维·ci/cd·云原生·容器·gitlab·jenkins