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" }'