第一步下载镜像elasticsearch:6.4.0,head:5
docker pull elasticsearch:6.4.0
docker pull mobz/elasticsearch-head:5
查看镜像:docker images
[[email protected]_1 es]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker latest fd7e073eb60f 2 weeks ago 152MB
httpd latest dabb52744997 3 weeks ago 178MB
tomcat latest 41a54fe1f79d 5 weeks ago 463MB
hello-world latest 4ab4c602aa5e 6 weeks ago 1.84kB
mysql 5.6 1f47fade220d 6 weeks ago 256MB
elasticsearch 6.4.0 1ac676545731 2 months ago 791MB
elasticsearch 5.2.0 c9c606d302fb 20 months ago 351MB
mobz/elasticsearch-head 5 b19a5c98e43b 21 months ago 824MB
第二步:编辑es1/elasticsearch.yml,es2/elasticsearch.yml
启动es1,es2
第三步:启动es和head
docker run --name es1 -p 9201:9200 -v "$PWD/es1/elasticsearch.yml":/usr/share/elasticsearch/config/elasticsearch.yml --ulimit nofile=65536:131072 -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" -d elasticsearch:6.4.0
docker run --name es2 -p 9200:9201 -v "$PWD/es2/elasticsearch.yml":/usr/share/elasticsearch/config/elasticsearch.yml --ulimit nofile=65536:131072 --link es1:es1 -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" -d elasticsearch:6.4.0
docker run -d -p 9100:9100 --name head mobz/elasticsearch-head:5
查看启动日志
docker logs es1
docker logs es2
docker logs head
第四步:查看dockers已启动容器
[[email protected]_1 es]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9c1753ddb9c2 elasticsearch:6.4.0 "/usr/local/bin/dock…" 18 minutes ago Up 18 minutes 9200/tcp, 9300/tcp, 0.0.0.0:9200->9201/tcp es2
715055b13691 elasticsearch:6.4.0 "/usr/local/bin/dock…" 18 minutes ago Up 18 minutes 9300/tcp, 0.0.0.0:9201->9200/tcp es1
0326da20de07 mobz/elasticsearch-head:5 "/bin/sh -c 'grunt s…" 23 minutes ago Up 23 minutes 0.0.0.0:9100->9100/tcp head
第五步:启动head查看es集群状况
通过命令查看es状况:
curl http://192.168.100.101:9200
curl http://192.168.100.101:9201
curl 192.168.100.101:9200/_cat/health(查看集群整体健康状况)
通过head查看集群状况:
完成!
【注】如果碰到head 无法连接es集群的状况,在elasticsearch.yml中添加配置
http.cors.enabled: true
http.cors.allow-origin: "*"
然后,重新创建容器即可连接成功!