docker-compose.yml配置文件
使用docker-compose.yml文件一次性启动集群,
以下配置文件启动了三个es节点,以及一个kibana节点。
version: '2.2'
services:
es01:
image: docker.elastic.co/elasticsearch/elasticsearch:7.15.1
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
- config01:/usr/share/elasticsearch/config
ports:
- 9200:9200
- 9300:9300
networks:
- elastic
es02:
image: docker.elastic.co/elasticsearch/elasticsearch:7.15.1
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
- config02:/usr/share/elasticsearch/config
networks:
- elastic
es03:
image: docker.elastic.co/elasticsearch/elasticsearch:7.15.1
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
- config03:/usr/share/elasticsearch/config
networks:
- elastic
kib01:
image: docker.elastic.co/kibana/kibana:7.15.1
container_name: kib01
environment:
- ELASTICSEARCH_HOSTS=http://es01:9200
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- kibana_data01:/usr/share/kibana/data
- kibana_config01:/usr/share/kibana/config
ports:
- 5601:5601
networks:
- elastic
volumes:
data01:
driver: local
config01:
driver: local
data02:
driver: local
config02:
driver: local
data03:
driver: local
config03:
driver: local
kibana_data01:
driver: local
kibana_config01:
driver: local
networks:
elastic:
driver: bridge
启动集群
-d 参数代表后台运行
docker-compose up -d
运行完成后:
[root@localhost elasticsearch]# docker-compose up -d
Creating network "elasticsearch_elastic" with driver "bridge"
Creating volume "elasticsearch_data01" with local driver
Creating volume "elasticsearch_config01" with local driver
Creating volume "elasticsearch_data02" with local driver
Creating volume "elasticsearch_config02" with local driver
Creating volume "elasticsearch_data03" with local driver
Creating volume "elasticsearch_config03" with local driver
Creating volume "elasticsearch_kibana_data01" with local driver
Creating volume "elasticsearch_kibana_config01" with local driver
Creating es03 ... done
Creating es02 ... done
Creating es01 ... done
Creating kib01 ... done
查看启动日志:
[root@localhost elasticsearch]# docker logs -f es01
启动成功后:
[root@localhost elasticsearch]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7144c417aeff docker.elastic.co/kibana/kibana:7.15.1 "/bin/tini -- /usr/l…" 10 seconds ago Up 8 seconds 0.0.0.0:5601->5601/tcp kib01
40d3ac477b4e docker.elastic.co/elasticsearch/elasticsearch:7.15.1 "/bin/tini -- /usr/l…" 10 seconds ago Up 8 seconds 9200/tcp, 9300/tcp es03
59a0cf16c7d8 docker.elastic.co/elasticsearch/elasticsearch:7.15.1 "/bin/tini -- /usr/l…" 10 seconds ago Up 8 seconds 0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp es01
aef72167de80 docker.elastic.co/elasticsearch/elasticsearch:7.15.1 "/bin/tini -- /usr/l…" 10 seconds ago Up 8 seconds 9200/tcp, 9300/tcp es02
4b0e7aa4678d mobz/elasticsearch-head:5 "/bin/sh -c 'grunt s…" 20 hours ago Up 20 hours 0.0.0.0:9100->9100/tcp es-head