Elasticsearch 7.x MCP Server

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