自学内容网 自学内容网

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


原文地址:https://blog.csdn.net/m0_38040684/article/details/143773836

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!