0
点赞
收藏
分享

微信扫一扫

docker安装单机ES

承蒙不弃 2022-04-21 阅读 43
java

首先拉取镜像:

sudo docker pull elasticsearch:7.12.0

创建docker容器挂在的目录:

sudo mkdir -p /opt/elasticsearch/config
sudo mkdir -p /opt/elasticsearch/data
sudo mkdir -p /opt/elasticsearch/plugins

配置文件:

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

授权文件权限:

sudo chmod -R +x /opt/elasticsearch/

创建容器:

sudo docker run --name elasticsearch -p 9200:9200  -p 9300:9300 \
 -e "discovery.type=single-node" \
 -e ES_JAVA_OPTS="-Xms1024m -Xmx8096m" \
 -v /opt/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
 -v /opt/elasticsearch/data:/usr/share/elasticsearch/data \
 -v /opt/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
 -d elasticsearch:7.12.0

说明:

将es中配置文件挂载到外面的目录,通过修改虚拟机外面的文件夹es配置,进而修改docker中es的配置
sudo mkdir -p /opt/elasticsearch/config
sudo mkdir -p /opt/elasticsearch/data
sudo mkdir -p /opt/elasticsearch/plugins
写了一个配置 http.host:0.0.0.0 代表es可以被远程的任何机器访问,注意这里host:后需要有空格
echo "http.host: 0.0.0.0">> /mydata/elasticsearch/config/elasticsearch.yml 运行elasticsearch命令,
为容器起一个名字为elasticsearch,-p暴露两个端口 9200 9300, 9200是发送http请求——restapi的端口,9300是es在分布式集群状态下,结点之间的通信端口, \代表换行下一行,
-e single-node 是以单节点方式运行,ES_JAVA_OPTS不指定的话,es一启动,会将内存全部占用,整个虚拟机就卡死了,
-v 进行挂载,目录中配置,数据等一一关联 -d 后台启动es使用指定的镜像

查看启动详情

docker ps  查看是否启动
docker logs elasticsearch  启动日志查询
docker restart elasticsearch   重启
docker exec -it elasticsearch bash 进入
举报

相关推荐

0 条评论