Docker安装ElasticSearch
拉取ES镜像
docker pull elasticsearch:9.2.1
安装临时ES容器,用于拷贝挂载文件
docker run --name es -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:9.2.1
拷贝挂载目录下的文件
docker cp -a es:/usr/share/elasticsearch/config/ /docker-data/elasticsearch
docker cp -a es:/usr/share/elasticsearch/data/ /docker-data/elasticsearch
docker cp -a es:/usr/share/elasticsearch/logs/ /docker-data/elasticsearch
docker cp -a es:/usr/share/elasticsearch/plugins/ /docker-data/elasticsearch
停止es服务,并删除临时容器
docker stop es
docker rm es
编辑配置文件
vi /docker-data/elasticsearch/config/elasticsearch.yml
添加
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
修改
xpack.security.http.ssl:
enabled: false
keystore.path: certs/http.p12
创建正式es容器
docker run -p 9200:9200 -p 9300:9300 \
--privileged=true --name es \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms256m -Xmx256m" \
-v /docker-data/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-v /docker-data/elasticsearch/data:/usr/share/elasticsearch/data \
-v /docker-data/elasticsearch/logs:/usr/share/elasticsearch/logs \
-v /docker-data/elasticsearch/config:/usr/share/elasticsearch/config \
-d elasticsearch:9.2.1
设置用户名和密码
进入容器
docker exec -it es /bin/bash
执行命令输入y开始设置密码,建议六个密码设置成一样的
bin/elasticsearch-setup-passwords interactive
退出容器
exit
重启容器
docker restart es
Docker安装ElasticSearch
https://ppaet.github.io/Docker安装ElasticSearch.html