Docker安装elasticsearch

本文提供了一套详细的步骤来帮助读者从零开始部署Elasticsearch。涵盖了安装前的准备、命令介绍、创建实例及配置、启动容器和服务访问等内容。

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

废话少说,直接上步骤。
先上几个常用命令:
docker ps -a
docker rm container
docker rmi image

1.拉取镜像

docker pull elasticsearch:tag
如:docker pull elasticsearch:7.4.2

2.创建目录

mkdir -p /mydata/elasticsearch/config/    建立文件:elasticsearch.yml
mkdir -p /mydata/elasticsearch/data/
mkdir -p /mydata/elasticsearch/plugins/

mkdir -p /usr/share/elasticsearch/config/  建立文件:elasticsearch.yml
mkdir -p /usr/share/elasticsearch/data/
mkdir -p /usr/share/elasticsearch/plugins/

echo "http.host: 0.0.0.0">>/mydata/elasticsearch/config/elasticsearch.yml

上面一定注意elasticsearch.yml必须是一个文件,不是目录,用ll查看是-r开头。

3.创建实例并启动:

sudo docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
-e ES_JAVA_OPS="-Xms256m -Xmx256m" \
-v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \
-v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.4.2

注意: chmod -R 777 /mydata/elasticsearch 要有访问权限
参数说明:

-p 9200:9200 将容器的9200端口映射到主机的9200端口;
--name elasticsearch 给当前启动的容器取名叫 elasticsearch
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data 将数据文件夹挂载到主机;
-v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml 将配置文件挂载到主机;
-d 以后台方式运行(daemon)
-e ES_JAVA_OPS="-Xms256m -Xmx256m" 测试时限定内存小一点

4.启动elasticsearch容器

docker start elasticsearch

5.访问elasticsearch

http://47.106.177.244:9200/

6.启动失败

经过一番查找发现这是由于elasticsearch5.0默认分配jvm空间大小为2g,内存不足以分配导致

查询jvm配置文件

#查询配置文件
find / -name jvm.options

#编辑配置文件
vi  文件路径

-Xms256m
-Xmx256m

搞定:
在这里插入图片描述

### 使用Docker安装Elasticsearch的教程 #### 安装前准备 为了确保顺利安装,需确认已正确配置好Docker环境并能够正常运行容器服务[^2]。 #### 下载官方镜像 通过执行如下命令来获取指定版本(例如7.14.0)的Elasticsearch Docker镜像: ```bash docker pull docker.elastic.co/elasticsearch/elasticsearch:7.14.0 ``` 这一步骤会从Elastic官方仓库下载对应标签下的最新构建版本[^1]。 #### 启动Elasticsearch实例 创建一个新的网络以便后续可以方便地连接其他组件如Kibana等工具;接着启动单节点模式下的Elasticsearch容器。这里假设使用默认设置,并开放9200端口用于HTTP通信以及9300端口作为集群间通讯接口: ```bash docker network create esnet docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \ -e "discovery.type=single-node" \ --network=esnet \ -d docker.elastic.co/elasticsearch/elasticsearch:7.14.0 ``` 上述操作定义了一个名为`elasticsearch`的新容器,并将其加入到之前建立好的虚拟网桥中去[^3]。 #### 配置持久化存储 为了避免数据丢失,在实际生产环境中建议将重要目录映射至宿主机路径下保存。比如把配置文件夹复制出来便于修改参数设定: ```bash mkdir -p /mydata/es/config docker cp elasticsearch:/usr/share/elasticsearch/config/ /mydata/es/ ``` 之后可以在本地编辑这些文档后再送回给正在运行的服务进程加载应用新的更改项。 #### 测试访问 最后可以通过浏览器或其他RESTful客户端尝试请求http://localhost:9200/_cat/nodes?v验证是否成功部署完成。如果一切正常的话应该能看到有关当前节点的信息列表显示出来。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wuyongde0922

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值