Elasticsearch 7.x MCP Server
by imlewc
services:
es01:
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.10
environment:
- node.name=es01
- cluster.name=es-mcp-cluster
- discovery.seed_hosts=es02,es03
- cluster.initial_master_nodes=es01,es02,es03
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- xpack.security.enabled=true
- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- esdata01:/usr/share/elasticsearch/data
ports:
- 9200:9200
networks:
- elastic
es02:
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.10
environment:
- node.name=es02
- cluster.name=es-mcp-cluster
- discovery.seed_hosts=es01,es03
- cluster.initial_master_nodes=es01,es02,es03
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- xpack.security.enabled=true
- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- esdata02:/usr/share/elasticsearch/data
networks:
- elastic
es03:
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.10
environment:
- node.name=es03
- cluster.name=es-mcp-cluster
- discovery.seed_hosts=es01,es02
- cluster.initial_master_nodes=es01,es02,es03
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- xpack.security.enabled=true
- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- esdata03:/usr/share/elasticsearch/data
networks:
- elastic
kibana:
image: docker.elastic.co/kibana/kibana:7.17.10
environment:
- ELASTICSEARCH_HOSTS=http://es01:9200
- ELASTICSEARCH_USERNAME=elastic
- ELASTICSEARCH_PASSWORD=${ELASTIC_PASSWORD}
ports:
- 5601:5601
networks:
- elastic
depends_on:
- es01
elasticsearch7-mcp-server:
build:
context: .
dockerfile: Dockerfile
environment:
- ELASTIC_HOST=http://es01:9200
- ELASTIC_USERNAME=elastic
- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}
- MCP_PORT=9999
ports:
- 9999:9999
networks:
- elastic
depends_on:
- es01
networks:
elastic:
driver: bridge
volumes:
esdata01:
driver: local
esdata02:
driver: local
esdata03:
driver: local