version: '2.2' services: elasticsearch: build: context: elasticsearch/ volumes: - ./elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml:ro - elasticsearch-volume:/usr/share/elasticsearch/data ports: - "9200:9200" - "9300:9300" environment: ES_JAVA_OPTS: "-Xmx256m -Xms256m" networks: - elk logstash: build: context: logstash/ volumes: - ./logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml:ro - ./logstash/pipeline:/usr/share/logstash/pipeline:ro - ./logstash/config/types.db:/usr/share/logstash/types.db:ro - logstash-volume:/usr/share/logstash/data ports: - "5000:5000" - "1062:162/udp" - "25828:25826/udp" environment: LS_JAVA_OPTS: "-Xmx256m -Xms256m" networks: - elk depends_on: - elasticsearch collectd: build: context: collectd/ volumes: - collectd-volume:/opt/collectd/var/lib/collectd/rrd ports: - "25826:25826/udp" - "8125:8125/udp" networks: - elk graphite: build: context: graphite/ volumes: - ./graphite/config/carbon.conf:/etc/graphite-statsd/conf/opt/graphite/conf/carbon.conf:ro - ./graphite/config/carbon.conf:/opt/graphite/conf/carbon.conf:ro - graphite-volume:/var/lib/carbon/ ports: - "2003:2003/udp" - "8128:8125/udp" - "8089:80" - "8126:8126" networks: - elk kibana: build: context: kibana/ volumes: - ./kibana/config/:/usr/share/kibana/config:ro ports: - "5601:5601" networks: - elk depends_on: - elasticsearch grafana: build: context: grafana/ volumes: - grafana-volume:/var/lib/grafana ports: - "3000:3000" networks: - elk depends_on: - elasticsearch volumes: grafana-volume: driver: local collectd-volume: driver: local elasticsearch-volume: driver: local logstash-volume: driver: local graphite-volume: driver: local networks: elk: driver: bridge