mirror of
https://github.com/gbrigandi/mcp-server-wazuh.git
synced 2025-07-13 15:14:48 -06:00
99 lines
2.7 KiB
YAML
99 lines
2.7 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
# Wazuh Indexer
|
|
wazuh-indexer:
|
|
image: wazuh/wazuh-indexer:4.7.2
|
|
platform: linux/amd64
|
|
hostname: wazuh-indexer
|
|
restart: always
|
|
ports:
|
|
- "9200:9200"
|
|
- "9300:9300"
|
|
environment:
|
|
- WAZUH_INITIAL_USER=admin
|
|
- WAZUH_INITIAL_PASSWORD=AdminPassword123!
|
|
- OPENSEARCH_JAVA_OPTS=-Xms1g -Xmx1g
|
|
ulimits:
|
|
memlock:
|
|
soft: -1
|
|
hard: -1
|
|
volumes:
|
|
- wazuh-indexer-data:/var/lib/opensearch/data
|
|
|
|
# Wazuh Manager
|
|
wazuh-manager:
|
|
image: wazuh/wazuh-manager:4.7.2
|
|
platform: linux/amd64
|
|
hostname: wazuh-manager
|
|
restart: always
|
|
ports:
|
|
# Wazuh agent communication
|
|
- "1514:1514/udp"
|
|
- "1515:1515/tcp"
|
|
# Wazuh API
|
|
- "55000:55000"
|
|
environment:
|
|
- WAZUH_INDEXER_URL=http://wazuh-indexer:9200
|
|
- WAZUH_API_USER=wazuh_user_demo # API User for MCP Server to use
|
|
- WAZUH_API_PASSWORD=wazuh_password_demo # API Password for MCP Server to use
|
|
depends_on:
|
|
wazuh-indexer:
|
|
condition: service_healthy
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-f", "http://localhost:9200/_cluster/health?wait_for_status=yellow&timeout=50s"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 5
|
|
volumes:
|
|
- wazuh-manager-data:/var/ossec/data
|
|
- wazuh-manager-logs:/var/ossec/logs
|
|
- wazuh-manager-etc:/var/ossec/etc
|
|
|
|
# Wazuh Dashboard
|
|
wazuh-dashboard:
|
|
image: wazuh/wazuh-dashboard:4.7.2
|
|
platform: linux/amd64
|
|
hostname: wazuh-dashboard
|
|
restart: always
|
|
ports:
|
|
- "8443:443"
|
|
environment:
|
|
- WAZUH_INDEXER_URL=http://wazuh-indexer:9200
|
|
- WAZUH_API_URL=http://wazuh-manager:55000
|
|
- WAZUH_USER=admin
|
|
- WAZUH_PASSWORD=AdminPassword123!
|
|
# - OPENSEARCH_DASHBOARDS_SERVER_SSL_ENABLED=true # Default is true
|
|
# - OPENSEARCH_DASHBOARDS_SERVER_SSL_KEY=/usr/share/wazuh-dashboard/certs/key.pem # Provide your certs if needed
|
|
# - OPENSEARCH_DASHBOARDS_SERVER_SSL_CERTIFICATE=/usr/share/wazuh-dashboard/certs/cert.pem
|
|
depends_on:
|
|
wazuh-manager:
|
|
condition: service_started
|
|
wazuh-indexer:
|
|
condition: service_healthy
|
|
|
|
# MCP Server
|
|
mcp-server:
|
|
build: .
|
|
ports:
|
|
- "${MCP_SERVER_PORT:-8000}:${MCP_SERVER_PORT:-8000}"
|
|
environment:
|
|
- WAZUH_HOST=wazuh-manager
|
|
- WAZUH_PORT=55000
|
|
- WAZUH_USER=wazuh_user_demo
|
|
- WAZUH_PASS=wazuh_password_demo
|
|
- VERIFY_SSL=false
|
|
- MCP_SERVER_PORT=${MCP_SERVER_PORT:-8000}
|
|
- RUST_LOG=${RUST_LOG:-info}
|
|
restart: unless-stopped
|
|
depends_on:
|
|
wazuh-manager:
|
|
condition: service_started
|
|
|
|
volumes:
|
|
wazuh-indexer-data:
|
|
wazuh-manager-data:
|
|
wazuh-manager-logs:
|
|
wazuh-manager-etc:
|
|
|