Docker compose部署elasticsearch(单机版)

整个工具的代码都在Gitee或者Github地址内

gitee:solomon-parent: 这个项目主要是总结了工作上遇到的问题以及学习一些框架用于整合例如:rabbitMq、reids、Mqtt、S3协议的文件服务器、mongodb

github:GitHub - ZeroNing/solomon-parent: 这个项目主要是总结了工作上遇到的问题以及学习一些框架用于整合例如:rabbitMq、reids、Mqtt、S3协议的文件服务器、mongodb

1.新增data文件夹

2.新增logs文件夹

3.新增docker-compose.yml文件

复制代码
version: '3.8'  # Docker Compose 文件版本

services:
  elasticsearch:
    image: elasticsearch:8.15.2  # 使用官方的 Elasticsearch Docker 镜像,版本为 8.15.2
    container_name: elasticsearch  # 容器的名称
    environment:  # 配置信息,通过环境变量传递到 Elasticsearch
      - node.name=elasticsearch  # 节点名称
      - cluster.name=es-docker-cluster  # 集群名称
      - discovery.type=single-node  # 启用单节点模式(适用于单机部署)
      - bootstrap.memory_lock=true  # 启用内存锁定,防止 Elasticsearch 将内存交换到磁盘
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"  # 设置 JVM 内存分配,最小和最大内存都为 512MB
      - xpack.security.enabled=false  # 禁用 Elasticsearch 内置的安全功能
      - xpack.security.transport.ssl.enabled=false  # 禁用传输层的 SSL/TLS 加密
    ulimits:
      memlock:
        soft: -1  # 设置内存锁定的软限制
        hard: -1  # 设置内存锁定的硬限制
    volumes:
      - /etc/localtime:/etc/localtime # 容器与宿主机时间同步
      - ./data:/usr/share/elasticsearch/data  # 挂载卷,将容器中的数据目录映射到主机
      - ./logs:/usr/share/elasticsearch/logs  # 持久化存储 Elasticsearch 日志
    ports:
      - 9200:9200  # 端口映射,将容器的 9200 端口映射到主机
      - 9300:9300  # 端口映射,将容器的 9300 端口映射到主机
    deploy:
      resources:
        limits:
          memory: 4g  # 限制容器使用的最大内存为 4GB
        reservations:
          memory: 512m  # 保留 512MB 内存,保证至少有 512MB 内存分配给容器
    restart:  always
相关推荐
9命怪猫14 分钟前
K8S服务发现原理及开发框架的配合
云原生·容器·kubernetes·服务发现
热爱生活的五柒20 分钟前
服务器突然之间特别卡,什么原因?
运维·服务器
zly35001 小时前
Linux(centos)安全狗
linux·运维·服务器
星辰云-1 小时前
Nginx笔记
运维·笔记·nginx
David爱编程1 小时前
理解Service的kube-proxy 实现原理
云原生·容器·kubernetes
失因2 小时前
Linux 权限管理与 ACL 访问控制
linux·运维·服务器·数据库·centos
Yolanda_20222 小时前
k8s黑马教程笔记
笔记·容器·kubernetes
杨浦老苏2 小时前
IMAP电子邮件归档系统Mail-Archiver
docker·群晖·邮件·email
悟能不能悟2 小时前
TransportClient详细说一说
运维·jenkins
藏在歌词里4 小时前
Linux-Shell脚本基础用法
linux·运维·服务器