拉取镜像
docker pull elasticsearch:6.8.0
docker pull kibana:6.8.0
创建挂在目录
cd /opt
mkdir docker-es
cd /opt/docker-es
mkdir config
mkdir data1
mkdir data2
mkdir data3
mkdir plugins
配置配置文件
在config目录下创建es1.yml es2.yml es3.yml 三个文件
touch es1.yml es2.yml es3.yml
es1.yml
cluster.name: elasticsearch-cluster
node.name: es-node1
network.bind_host: 0.0.0.0
network.publish_host: 127.0.0.2 //自己服务器的ip
http.port: 9200
transport.tcp.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["172.17.0.2:9300","172.17.0.3:9301","172.17.0.4:9302"]
discovery.zen.minimum_master_nodes: 2
es2.yml
cluster.name: elasticsearch-cluster
node.name: es-node1
network.bind_host: 0.0.0.0
network.publish_host: 127.0.0.3 //自己服务器的ip
http.port: 9201
transport.tcp.port: 9301
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["172.17.0.2:9300","172.17.0.3:9301","172.17.0.4:9302"]
discovery.zen.minimum_master_nodes: 2
es3.yml
在这里插入代码片
cluster.name: elasticsearch-cluster
node.name: es-node1
network.bind_host: 0.0.0.0
network.publish_host: 127.0.0.3 //自己服务器的ip
http.port: 9202
transport.tcp.port: 9302
http.cors.enabled: true
http.cors.allow-origin: “*”
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: [“172.17.0.2:9300”,“172.17.0.3:9301”,“172.17.0.4:9302”]
discovery.zen.minimum_master_nodes: 2
下载ik分词器
cd plugins
mkdir ik
yum install wget
wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.8.0/elasticsearch-analysis-ik-6.8.0.zip
启动容器
elasticsearch
docker run --name 1.es1 -d -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -v /opt/docker-es/data1:/usr/share/elasticsearch/data -v /opt/docker-es/config/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /opt/docker-es/plugins:/usr/share/elasticsearch/plugins -p 9200:9200 -p 9300:9300 elasticsearch:6.8.0
docker run --name 1.es2 -d -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -v /opt/docker-es/data2:/usr/share/elasticsearch/data -v /opt/docker-es/config/es2.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /opt/docker-es/plugins:/usr/share/elasticsearch/plugins -p 9201:9201 -p 9301:9301 elasticsearch:6.8.0
docker run --name 1.es3 -d -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -v /opt/docker-es/data3:/usr/share/elasticsearch/data -v /opt/docker-es/config/es3.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /opt/docker-es/plugins:/usr/share/elasticsearch/plugins -p 9202:9202 -p 9302:9302 elasticsearch:6.8.0
kibana
运行容器
#运行kibana 注意IP一定不要写错
docker run --name kibana -e ELASTICSEARCH_HOSTS=http://自己的elasticsearchIP地址:9200 -p 5601:5601 -d kibana:7.6.2
修改配置文件
docker exec -it kibana bash
vi /usr/share/kibana/config/kibana.yml
写入如下内容
server.name: kibana
server.host: "0"
#elasticsearch.hosts: [ "http://elasticsearch:9200" ]
elasticsearch.hosts: [ "http://自己的elasticsearch的IP:9200" ]
xpack.monitoring.ui.container.elasticsearch.enabled: true
#设置kibana中文显示
i18n.locale: zh-CN
重启容器
docker restart kibana
验证是否安装成功
http://自己的IP地址:5601