version: "3.8" services: elasticsearch: image: elasticsearch:8.10.1 volumes: - elk-data:/usr/share/elasticsearch/data deploy: resources: limits: memory: 3072M networks: - lognet ports: - "127.0.0.1:9200:9200" - "127.0.0.1:9300:9300" environment: - ES_JAVA_OPTS=-Xms256m -Xmx256m - discovery.type=single-node - xpack.security.enabled=false logstash: image: logstash:8.10.1 deploy: resources: limits: memory: 1024M networks: - lognet depends_on: - elasticsearch environment: - MONITORING_ENABLED=true - LS_JAVA_OPTS=-Xms256m -Xmx256m ports: - "127.0.0.1:5103:5000" kibana: image: kibana:8.10.1 deploy: resources: limits: memory: 1024M environment: - ELASTICSEARCH_URL=http://elastic:9200 networks: - lognet ports: - "127.0.0.1:5102:5601" depends_on: - elasticsearch volumes: - kibana-data:/usr/share/elasticsearch/data # filebeat: # image: docker.elastic.co/beats/filebeat:7.10.1 # networks: # - lognet # depends_on: # - elasticsearch # environment: # - setup.kibana.host=kibana:5601 # - output.elasticsearch.hosts=["elasticsearch:9200"] # volumes: # - log-data:/logs/ # - ./filebeat/config/filebeat.yml:/usr/share/filebeat/filebeat.yml volumes: elk-data: log-data: kibana-data: networks: lognet: driver: bridge attachable: true