title: Docker安装ElasticSearch和kibana
tags:
笔者这里kibana和elasticsearch下载的都是6.8.5 tag的镜像
# 下载elasticsearch镜像
docker pull elasticsearch:6.8.5
# 下载kibana镜像
docker pull kibana:6.8.5
创建网络别名
docker network create test_net
启动elasticsearch
docker run -d --name elasticsearch --net test_net -p 9200:9200 -p 9300:9300 -ee"discovery.type=single-node" elasticsearch:6.8.5
启动kibana
docker run -d --name kibana --net test_net -p 5601:5601 kibana:6.8.5
创建
PUT /test
{
"settings": {
"number_of_shards": 1
},
"mappings": {
"_doc": {
"properties": {
"amount": {
"type": "long"
}
}
}
}
}
doc插入
put /test/_doc/doc1
{
"amount": -9.223372036854775808E18
}
put /test/_doc/doc2
{
"amount": -9.223372036854775101E18
}
聚合查询
GET /test/_search
{
"aggs": {
"_agg": {
"terms": {
"field": "amount",
"size": 10
},
"aggs": {
"_count": {
"value_count": {
"field": "amount"
}
}
}
}
}
}
删除
DELETE test
#mac
brew install docker-compose
#linux
apt-get update && install docker-compose
es
├── docker-compose.yml
├── kibana
│ └── cfg
│ └── kibana.yml
├── master
│ ├── conf
│ │ └── elasticsearch.yml
│ ├── data
│ └── logs
├── node1
│ ├── conf
│ │ └── elasticsearch.yml
│ ├── data
│ └── logs
└── node2
├── conf
│ └── elasticsearch.yml
├── data
└── logs
version: '3'
services:
es-master:
image: elasticsearch:6.8.5
container_name: es-master
restart: always
volumes:
- ./master/data:/usr/share/elasticsearch/data:rw
- ./master/conf/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
- ./master/logs:/user/share/elasticsearch/logs:rw
ports:
- "9200:9200"
- "9300:9300"
environment:
- node.name=es-master
- cluster.name=es-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
networks:
- elastic
ulimits:
memlock:
soft: -1
hard: -1
es-node1:
image: elasticsearch:6.8.5
container_name: es-node1
restart: always
volumes:
- ./node1/data:/usr/share/elasticsearch/data:rw
- ./node1/conf/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
- ./node1/logs:/user/share/elasticsearch/logs:rw
ports:
- "9201:9200"
- "9301:9300"
environment:
- node.name=es-node1
- cluster.name=es-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
networks:
- elastic
ulimits:
memlock:
soft: -1
hard: -1
es-node2:
image: elasticsearch:6.8.5
container_name: es-node2
restart: always
volumes:
- ./node2/data:/usr/share/elasticsearch/data:rw
- ./node2/conf/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
- ./node2/logs:/user/share/elasticsearch/logs:rw
ports:
- "9202:9200"
- "9302:9300"
environment:
- node.name=es-node2
- cluster.name=es-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
networks:
- elastic
ulimits:
memlock:
soft: -1
hard: -1
es-head:
image: tobias74/elasticsearch-head:6
container_name: es-head
restart: always
ports:
- "9100:9100"
es-kibana:
image: kibana:6.8.5
container_name: es-kibana
restart: always
ports:
- "5601:5601"
volumes:
- ./kibana/cfg/kibana.yml:/usr/share/kibana/config/kibana.yml
networks:
- elastic
#网络方式使用桥接模式
networks:
elastic:
driver: bridge
bootstrap.memory_lock: false
cluster.name: "es-cluster"
node.name: es-master
node.master: true
node.data: false
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
discovery.zen.ping.unicast.hosts: es-node1, es-node2
discovery.zen.minimum_master_nodes: 1
path.logs: /usr/share/elasticsearch/logs
http.cors.enabled: true
http.cors.allow-origin: "*"
xpack.security.audit.enabled: false
es-node1
cluster.name: "es-cluster"
node.name: node1
node.master: false
node.data: true
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
discovery.zen.ping.unicast.hosts: es-master, es-node2
path.logs: /usr/share/elasticsearch/logs
es-node2
cluster.name: "es-cluster"
node.name: node2
node.master: false
node.data: true
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
discovery.zen.ping.unicast.hosts: es-master, es-node1
path.logs: /usr/share/elasticsearch/logs
kibana
#链接节点
elasticsearch.hosts: ["http://es-master:9200", "http://es-node1:9201", "http://es-node2:9202"]
server.host: "0.0.0.0"
xpack.monitoring.ui.container.elasticsearch.enabled: true
#语言
i18n.locale: zh-CN