---
version: '2.4'
services:
elasticsearch:
image: ${ELASTICSEARCH_IMAGE}
restart: always
environment:
- 'node.name=HEYJUDE'
- 'discovery.type=single-node'
- 'bootstrap.memory_lock=true'
- 'ES_JAVA_OPTS=-Xms256m -Xmx256m'
ports:
- 9200:9200
# - 9300:9300
volumes:
- type: bind
source: /var/lib/elasticsearch
target: /usr/share/elasticsearch/data
networks:
- net
logging:
driver: fluentd
options:
fluentd-address: localhost:24224
fluentd-async-connect: 'true'
fluentd-retry-wait: '1s'
fluentd-max-retries: '30'
tag: ${LOG_OPT_TAG_PREFIX}.efk.elasticsearch
kibana:
image: ${KIBANA_IMAGE}
restart: always
# ports:
# - 5601:5601
networks:
- net
depends_on:
- elasticsearch
logging:
driver: fluentd
options:
fluentd-address: localhost:24224
fluentd-async-connect: 'true'
fluentd-retry-wait: '1s'
fluentd-max-retries: '30'
tag: ${LOG_OPT_TAG_PREFIX}.efk.kibana
fluentd:
image: ${FLUENTD_IMAGE}
ports:
- 127.0.0.1:24224:24224
# - 24224:24224/udp
volumes:
- ./fluentd/etc:/fluentd/etc
networks:
- net
nginx:
image: ${NGINX_IMAGE}
restart: always
ports:
- 80:80
volumes:
- type: bind
source: ./nginx/nginx.conf
target: /etc/nginx/nginx.conf
read_only: true
- type: bind
source: ./nginx/conf.d
target: /etc/nginx/conf.d
read_only: true
networks:
- net
depends_on:
- kibana
logging:
driver: fluentd
options:
fluentd-address: localhost:24224
fluentd-async-connect: 'true'
fluentd-retry-wait: '1s'
fluentd-max-retries: '30'
tag: ${LOG_OPT_TAG_PREFIX}.efk.nginx
networks:
net:
driver: bridge