docker搭建elasticsearch:7.6.2并开启x-pack

1.docker拉取镜像

docker pull elasticsearch:7.6.2

2.简单启动一下 ,把镜像里面的elasticsearch.yml给cp出来,方便做映射

docker run -d -dname es elasticsearch:7.6.2

docker cp es::/usr/share/elasticsearch/config/elasticsearch.yml /data/es/

3.杀掉es测试容器,重新启动并做好映射

docker run -d -it 
--privileged=true --name=es7 
-p 29200:9200 -p 29300:9300  
-e "discovery.type=single-node" 
-v /data/es/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml 
-e ES_JAVA_OPTS="-Xms256m -Xmx256m" elasticsearch:7.6.2

-e "discovery.type=single-node" 开启单节点访问

-e ES_JAVA_OPTS="-Xms256m -Xmx256m" 做内存限制

4.开启x-pack (x-pack在es7.3之后就免费了)
在elasticsearch.yml中添加

xpack.security.enabled: true

然后重启

5.设置密码

1.进入es容器
docker exec -it es7 bash

cd /usr/share/elasticsearch/

2.设置密码
bin/elasticsearch-setup-passwords interactive

Initiating the setup of passwords for reserved users elastic,kibana,logstash_system,beats_system.
You will be prompted to enter passwords as the process progresses.
Please confirm that you would like to continue [y/N]y
Enter password for [elastic]: 
passwords must be at least [6] characters long
Try again.
Enter password for [elastic]: 
Reenter password for [elastic]: 
Passwords do not match.
Try again.
Enter password for [elastic]: 
Reenter password for [elastic]: 
Enter password for [kibana]: 
Reenter password for [kibana]: 
Enter password for [logstash_system]: 
Reenter password for [logstash_system]: 
Enter password for [beats_system]: 
Reenter password for [beats_system]: 
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [elastic]

3.修改密码
curl -H "Content-Type:application/json" -XPOST -u elastic 'http://127.0.0.1:9200/_xpack/security/user/elastic/_password' -d '{ "password" : "123456" }'
原文地址:https://www.cnblogs.com/ljt0822/p/14062387.html