You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
115 lines
3.1 KiB
115 lines
3.1 KiB
version: "3" |
|
services: |
|
es-master: |
|
container_name: es-master |
|
hostname: es-master |
|
image: elasticsearch:7.1.1 |
|
restart: always |
|
ports: |
|
- 9200:9200 |
|
- 9300:9300 |
|
volumes: |
|
- ./elasticsearch/master/conf/es-master.yml:/usr/share/elasticsearch/config/elasticsearch.yml |
|
- ./elasticsearch/master/data:/usr/share/elasticsearch/data |
|
- ./elasticsearch/master/logs:/usr/share/elasticsearch/logs |
|
environment: |
|
- "ES_JAVA_OPTS=-Xms512m -Xmx512m" |
|
|
|
es-slave1: |
|
container_name: es-slave1 |
|
image: elasticsearch:7.1.1 |
|
restart: always |
|
ports: |
|
- 9201:9200 |
|
- 9301:9300 |
|
volumes: |
|
- ./elasticsearch/slave1/conf/es-slave1.yml:/usr/share/elasticsearch/config/elasticsearch.yml |
|
- ./elasticsearch/slave1/data:/usr/share/elasticsearch/data |
|
- ./elasticsearch/slave1/logs:/usr/share/elasticsearch/logs |
|
environment: |
|
- "ES_JAVA_OPTS=-Xms512m -Xmx512m" |
|
|
|
es-slave2: |
|
container_name: es-slave2 |
|
image: elasticsearch:7.1.1 |
|
restart: always |
|
ports: |
|
- 9202:9200 |
|
- 9302:9300 |
|
volumes: |
|
- ./elasticsearch/slave2/conf/es-slave2.yml:/usr/share/elasticsearch/config/elasticsearch.yml |
|
- ./elasticsearch/slave2/data:/usr/share/elasticsearch/data |
|
- ./elasticsearch/slave2/logs:/usr/share/elasticsearch/logs |
|
environment: |
|
- "ES_JAVA_OPTS=-Xms512m -Xmx512m" |
|
|
|
es-head: |
|
container_name: es-head |
|
image: mobz/elasticsearch-head:5 |
|
restart: always |
|
ports: |
|
- 9100:9100 |
|
depends_on: |
|
- es-master |
|
- es-slave1 |
|
- es-slave2 |
|
|
|
kibana: |
|
container_name: kibana |
|
hostname: kibana |
|
image: kibana:7.1.1 |
|
restart: always |
|
ports: |
|
- 5601:5601 |
|
volumes: |
|
- ./kibana/conf/kibana.yml:/usr/share/kibana/config/kibana.yml |
|
environment: |
|
- elasticsearch.hosts=http://es-master:9200 |
|
depends_on: |
|
- es-master |
|
- es-slave1 |
|
- es-slave2 |
|
|
|
filebeat: |
|
# 容器名称 |
|
container_name: filebeat |
|
# 主机名称 |
|
hostname: filebeat |
|
# 镜像 |
|
image: docker.elastic.co/beats/filebeat:7.1.1 |
|
# 重启机制 |
|
restart: always |
|
# 持久化挂载 |
|
volumes: |
|
- ./filebeat/conf/filebeat.yml:/usr/share/filebeat/filebeat.yml |
|
# 映射到容器中[作为数据源] |
|
- ./logs:/home/project/elk/logs |
|
- ./filebeat/logs:/usr/share/filebeat/logs |
|
- ./filebeat/data:/usr/share/filebeat/data |
|
# 将指定容器连接到当前连接,可以设置别名,避免ip方式导致的容器重启动态改变的无法连接情况 |
|
links: |
|
- logstash |
|
ports: |
|
- 9000:9000 |
|
# 依赖服务[可无] |
|
depends_on: |
|
- es-master |
|
- es-slave1 |
|
- es-slave2 |
|
|
|
logstash: |
|
container_name: logstash |
|
hostname: logstash |
|
image: logstash:7.1.1 |
|
command: logstash -f ./conf/logstash-filebeat.conf |
|
restart: always |
|
volumes: |
|
# 映射到容器中 |
|
- ./logstash/conf/logstash-filebeat.conf:/usr/share/logstash/conf/logstash-filebeat.conf |
|
- ./logstash/conf/logstash.yml:/usr/share/logstash/config/logstash.yml |
|
ports: |
|
- 5044:5044 |
|
depends_on: |
|
- es-master |
|
- es-slave1 |
|
- es-slave2
|
|
|