elasticsearch:7.4.2 的docker-compose.yml文件
version: '2.2'
services:
es01:
image: elasticsearch:7.4.2
container_name: es01
environment:
- node.name=es01
- cluster.name=es-docker-cluster
- discovery.seed_hosts=es02,es03
- cluster.initial_master_nodes=es01,es02,es03
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- data01:/usr/share/elasticsearch/data
ports:
- 9200:9200
networks:
- elastic
es02:
image: elasticsearch:7.4.2
container_name: es02
environment:
- node.name=es02
- cluster.name=es-docker-cluster
- discovery.seed_hosts=es01,es03
- cluster.initial_master_nodes=es01,es02,es03
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- data02:/usr/share/elasticsearch/data
ports:
- 9201:9201
networks:
- elastic
es03:
image: elasticsearch:7.4.2
container_name: es03
environment:
- node.name=es03
- cluster.name=es-docker-cluster
- discovery.seed_hosts=es01,es02
- cluster.initial_master_nodes=es01,es02,es03
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- data03:/usr/share/elasticsearch/data
ports:
- 9202:9202
networks:
- elastic
volumes:
data01:
driver: local
data02:
driver: local
data03:
driver: local
networks:
elastic:
driver: bridge
elasticsearch:7.0版本docker-compose.yml文件 带kibana
version: "3.0"
services:
elasticsearch7-1:
image: docker.elastic.co/elasticsearch/elasticsearch:7.0.1
container_name: elasticsearch7-1
environment:
- node.name=es01 # 节点名称
- discovery.seed_hosts=elasticsearch1 # 发现机制
- cluster.initial_master_nodes=es01,es02 # 集群发现顺序
- cluster.name=docker-cluster # 集群名称
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m" # 运行内存, 感觉没有生效
# - node.name=es01
# - node.master=true
# - node.data=true
# - discovery.seed_hosts=es02
# - cluster.initial_master_nodes=es01,es02
# - cluster.name=docker-cluster
# - bootstrap.memory_lock=true
# - http.port=9200
# - transport.tcp.port=9300
# - cluster.remote.connect=false
# - xpack.security.enabled=true
# - ES_JAVA_OPTS=-Xms512m -Xmx512m
ulimits:
memlock:
soft: -1
hard: -1
ports:
# 端口映射
- 9200:9200
- 9300:9300
networks:
# 网段名称, 需要相互关联的容器必须处于同一个network中
- somenetwork
volumes:
- ../data/elasticsearch-7.0/es01/data:/usr/share/elasticsearch/data
elasticsearch7-2:
image: docker.elastic.co/elasticsearch/elasticsearch:7.0.1
container_name: elasticsearch7-2
environment:
- node.name=es02
# elasticSearch也是容器名称
- discovery.seed_hosts=elasticsearch
# 集群发现的顺序
- cluster.initial_master_nodes=es01,es02
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
# - node.name=es02
# - discovery.seed_hosts=es01
# - cluster.initial_master_nodes=es01,es02
# - node.master=true
# - node.data=true
# - cluster.name=docker-cluster
# - bootstrap.memory_lock=true
# - http.port=9201
# - transport.tcp.port=9301
# - cluster.remote.connect=false
# - xpack.security.enabled=true
# - ES_JAVA_OPTS=-Xms512m -Xmx512m
ulimits:
memlock:
soft: -1
hard: -1
ports:
- 9201:9200
- 9301:9300
networks:
- somenetwork
volumes:
- ../data/elasticsearch-7.0/es02/data:/usr/share/elasticsearch/data
kibana7.0.1:
image: docker.elastic.co/kibana/kibana:7.0.1
container_name: kibana7
ports:
- 5601:5601
environment:
# - server.name=kibana
# elasticSearch是容器名称, 这里, 集群要保证主节点对应的这个
- elasticsearch7-1.hosts=http://elasticsearch:9200
- i18n.locale=zh-CN
networks:
- somenetwork
networks:
somenetwork:
driver: bridge
elasticsearch-7.0 带elasticsearch-hd的yml文件配置
version: '3'
services:
elasticsearch:
image: elasticsearch:7.0.1
container_name: elasticsearch7
networks:
- net-es
volumes:
- ../data/elasticsearch-7.0/data:/usr/share/elasticsearch/data #这里将elasticsearch的数据文件映射本地,以保证下次如果删除了容器还有数据
environment:
- discovery.type=single-node
ports:
- "9207:9207"
elastichd:
image: containerize/elastichd:latest
container_name: elasticsearch-hd
networks:
- net-es
ports:
- "9800:9800"
depends_on:
- "elasticsearch"
links:
- "elasticsearch:demo"
#这里要注意,es和eshd要在相同网络才能被links
networks:
net-es:
external: false