68 lines
1.6 KiB
YAML
68 lines
1.6 KiB
YAML
services:
|
|
elasticsearch:
|
|
image: docker.elastic.co/elasticsearch/elasticsearch:9.0.2
|
|
container_name: elasticsearch
|
|
environment:
|
|
- node.name=elasticsearch
|
|
- discovery.type=single-node
|
|
- xpack.security.enabled=true
|
|
- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}
|
|
ports:
|
|
- "9200:9200"
|
|
volumes:
|
|
- esdata:/usr/share/elasticsearch/data
|
|
networks:
|
|
- elk
|
|
|
|
kibana:
|
|
image: docker.elastic.co/kibana/kibana:9.0.2
|
|
container_name: kibana
|
|
environment:
|
|
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
|
|
- ELASTICSEARCH_USERNAME=${ELASTIC_USER}
|
|
- ELASTICSEARCH_PASSWORD=${ELASTIC_PASSWORD}
|
|
ports:
|
|
- "5601:5601"
|
|
depends_on:
|
|
- elasticsearch
|
|
networks:
|
|
- elk
|
|
|
|
logstash:
|
|
image: docker.elastic.co/logstash/logstash:9.0.2
|
|
container_name: logstash
|
|
environment:
|
|
- xpack.monitoring.enabled=true
|
|
- ELASTIC_USERNAME=${ELASTIC_USER}
|
|
- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}
|
|
ports:
|
|
- "5044:5044"
|
|
volumes:
|
|
- ./logstash/pipeline:/usr/share/logstash/pipeline
|
|
depends_on:
|
|
- elasticsearch
|
|
networks:
|
|
- elk
|
|
|
|
filebeat:
|
|
image: docker.elastic.co/beats/filebeat:9.0.2
|
|
container_name: filebeat
|
|
user: root
|
|
environment:
|
|
- ELASTICSEARCH_USERNAME=${ELASTIC_USER}
|
|
- ELASTICSEARCH_PASSWORD=${ELASTIC_PASSWORD}
|
|
volumes:
|
|
- /var/lib/docker/containers:/var/lib/docker/containers:ro
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
- ./filebeat:/usr/share/filebeat/:ro
|
|
depends_on:
|
|
- logstash
|
|
networks:
|
|
- elk
|
|
command: ["--strict.perms=false"]
|
|
|
|
volumes:
|
|
esdata:
|
|
|
|
networks:
|
|
elk: |