Skip to content

Instantly share code, notes, and snippets.

@jamct
Last active October 25, 2022 16:49
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save jamct/4ac120368659937b7ffd1d8e16bb17fa to your computer and use it in GitHub Desktop.
Save jamct/4ac120368659937b7ffd1d8e16bb17fa to your computer and use it in GitHub Desktop.

Folder structure

docker-compose.yml
elastic/
  elasticsearch.yml
kibana/
  kibana.yml
logstash/
  logstash.yml
  pipeline/
    logstash.conf
version: "3.9"
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.15.1
volumes:
- ./elastic/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
- elastic:/usr/share/elasticsearch/data
ports:
- "9200:9200"
- "9300:9300"
environment:
ES_JAVA_OPTS: "-Xmx256m -Xms256m"
ELASTIC_PASSWORD: verySecret
discovery.type: single-node
networks:
- elastic
logstash:
image: docker.elastic.co/logstash/logstash:7.15.1
volumes:
- ./logstash/logstash.yml:/usr/share/logstash/config/logstash.yml
- ./logstash/pipeline:/usr/share/logstash/pipeline
ports:
- "5044:5044"
- "5000:5000/tcp"
- "5000:5000/udp"
- "9600:9600"
environment:
LS_JAVA_OPTS: "-Xmx256m -Xms256m"
networks:
- elastic
depends_on:
- elasticsearch
kibana:
image: docker.elastic.co/kibana/kibana:7.15.1
volumes:
- ./kibana/kibana.yml:/usr/share/kibana/config/kibana.yml
ports:
- "5601:5601"
networks:
- elastic
depends_on:
- elasticsearch
networks:
elastic:
driver: bridge
volumes:
elastic:
cluster.name: "docker-cluster"
network.host: 0.0.0.0
## X-Pack settings
## https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-xpack.html
xpack.license.self_generated.type: trial
xpack.security.enabled: true
xpack.monitoring.collection.enabled: true
server.name: kibana
server.host: 0.0.0.0
elasticsearch.hosts: [ "http://elasticsearch:9200" ]
monitoring.ui.container.elasticsearch.enabled: true
elasticsearch.username: elastic
elasticsearch.password: verySecret
xpack.encryptedSavedObjects.encryptionKey: 1234532112121aabcdefghij123123123
input {
beats {
port => 5044
}
tcp {
port => 5000
}
}
output {
elasticsearch {
hosts => "elasticsearch:9200"
user => "elastic"
password => "verySecret"
ecs_compatibility => disabled
}
}
http.host: "0.0.0.0"
xpack.monitoring.elasticsearch.hosts: [ "http://elasticsearch:9200" ]
## X-Pack security credentials
#
xpack.monitoring.enabled: true
xpack.monitoring.elasticsearch.username: elastic
xpack.monitoring.elasticsearch.password: verySecret
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment