docker 部署ElasticSearch

本文详细介绍了如何使用Docker部署Elasticsearch,包括获取镜像、启动容器、数据持久化、全参数启动、Kibana集成以及安装中文分词器ik。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker 部署ElasticSearch

一、获取镜像

docker pull elasticsearch:7.13.4

二、简单启动(为获取容器中es的工作目录)

1、启动

docker run -d --name es \
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
-e "discovery.type=single-node" \
--privileged \
-p 9200:9200 \
-p 9300:9300 \
elasticsearch:7.13.4

2、检查容器查找工作目录

docker inspect es

在这里插入图片描述

3、进入容器查看工作目录

#进入容器
docker exec -it es /bin/bash
#进入工作目录
cd /usr/share/elasticsearch/
#查看工作目录内容(下面图片中圈出来的三个子目录后续做配置、数据管理、插件安装时要用到)
ls
#推出容器
exit

在这里插入图片描述

4、创建本地映射目录 并复制临时容器中的配置文件

mkdir -p /mydata/es/{data,config,plugins}
chmod -R 777 /mydata/es/{data,config,plugins}

5、停止删除简单的容器

docker stop es && docker rm es

三、全参数启动

1、启动

# 创建专用网络 为以后的kibana做准备
docker network create es-net
# 启动
docker run -d --name es \
-e "ES_JAVA_OPTS=-Xms512m -Xmx1024m" \
-e "discovery.type=single-node" \
-v /mydata/es/config:/usr/share/elasticsearch/config \
-v /mydata/es/data:/usr/share/elasticsearch/data \
-v /mydata/es/plugins:/usr/share/elasticsearch/plugins \
--privileged \
--network es-net \
-p 9200:9200 \
-p 9300:9300 \
elasticsearch:7.13.4

#参数说明
-e : es启动时参数【启动虚拟机内存,最大虚拟机内存、集群还是单点等等】
-v :数据卷
-p :端口映射
--network :指定网络
--privileged : 容器内部开放权限,可访问主机设备

2、访问

http:localhost:9200

在这里插入图片描述

四、安装Kibana

#获取镜像
docker pull kibana:7.13.4
#启动镜像
docker run -d  --name kibana \
-e ELASTICSEARCH_HOSTS=http://es:9200 \
--network es-net \
-p 5601:5601 kibana:7.13.4
#访问地址:
http:localhost:5601 

在这里插入图片描述

五、安装ik 分词器(中文分词器)

#进入插件配置页面
cd /mydata/es/plugins
# 下载(服务器太慢了,我直接本地下载上传上来一样的)
curl https://github.com/infinilabs/analysis-ik/releases/download/v7.13.4/elasticsearch-analysis-ik-7.13.4.zip
# 解压文件
unzip elasticsearch-analysis-ik-7.13.4.zip -d es-analysis-ik-7.12.4
# 删除zip文件 
rm elasticsearch-analysis-ik-7.13.4.zip
# 重启es
docker restart es
### 使用Docker部署Elasticsearch教程 #### 准备工作 为了确保顺利部署,需确认已安装并配置好Docker环境。对于特定版本的需求,如7.17.5版本的Elasticsearch及其组件,可通过指定标签拉取相应镜像[^1]。 #### 下载所需镜像 针对所需的Elasticsearch、Kibana以及IK分词器,均选择相同的大版本号以保障最佳兼容性。执行如下命令来获取官方提供的Docker镜像: ```bash docker pull elasticsearch:7.17.5 docker pull kibana:7.17.5 ``` 上述操作会从Docker Hub下载对应版本的软件包到本地机器上,以便后续创建容器实例时使用。 #### 启动单节点Elasticsearch服务 利用之前下载好的镜像文件,可以通过简单的`docker run`指令快速启动一个独立运作的服务端口映射至主机8080端口为例展示基本语法结构: ```bash docker run -d --name es-node \ -e "discovery.type=single-node" \ -p 9200:9200 \ -p 9300:9300 \ elasticsearch:7.17.5 ``` 此段脚本定义了一个名为`es-node`的新后台进程,并设置了必要的环境变量使得该节点作为单一模式运行;同时开放了两个网络接口供外部访问API请求及内部通信之用。 #### 运行Kibana可视化工具并与Elasticsearch连接 同样基于先前准备完毕的基础之上,继续添加另一个辅助性的前端界面——Kibana用于监控管理集群状态等高级功能特性。下面给出了一套完整的参数设置方案实现两者之间的无缝对接交互体验: ```bash docker run -d --name kb-server \ -e ELASTICSEARCH_HOSTS=http://<your-es-ip>:9200 \ -p 5601:5601 \ kibana:7.17.5 ``` 请注意替换其中占位符部分为实际存在的IP地址或者域名信息指向已经成功搭建完成后的搜索引擎位置。 #### 数据持久化处理建议 考虑到长期稳定性和灾难恢复能力,在生产级别应用场合下推荐采用挂载卷的方式保存重要资料防止意外丢失风险发生。例如修改之前的启动语句加入额外选项即可达成目的: ```bash docker run -d --name es-persistent \ -v /path/to/data:/usr/share/elasticsearch/data \ ... ``` 此处省略部分内容保持原有逻辑不变仅增加体积绑定路径从而达到预期效果[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值