version: '3.8' volumes: wazuh-indexer-data: driver: local wazuh-manager-config: driver: local wazuh-manager-logs: driver: local services: wazuh-indexer: image: wazuh/wazuh-indexer:4.7.3 container_name: wazuh-indexer-demo hostname: wazuh-indexer restart: always ports: - "9200:9200" - "9300:9300" environment: - OPENSEARCH_INITIAL_ADMIN_PASSWORD=YourChosenStrongPassword! - OPENSEARCH_JAVA_OPTS=-Xms1g -Xmx1g volumes: - wazuh-indexer-data:/var/lib/opensearch/data healthcheck: test: ["CMD-SHELL", "curl -k -u admin:YourChosenStrongPassword! https://localhost:9200/_cluster/health?wait_for_status=yellow&timeout=5s"] interval: 30s timeout: 10s retries: 5 start_period: 120s networks: - wazuh-net-demo wazuh-manager: image: wazuh/wazuh-manager:4.7.3 container_name: wazuh-manager-demo hostname: wazuh-manager restart: always ports: - "1514:1514/udp" - "1515:1515/tcp" - "55000:55000/tcp" environment: - WAZUH_INDEXER_URL=https://wazuh-indexer:9200 - WAZUH_INDEXER_USER=admin - WAZUH_INDEXER_PASSWORD=YourChosenStrongPassword! - WAZUH_API_USER=wazuh - WAZUH_API_PASSWORD=wazuh - INDEXER_SSL_VERIFY=false - WAZUH_CLUSTER_KEY=myDemoClusterKey volumes: - wazuh-manager-config:/var/ossec/etc - wazuh-manager-logs:/var/ossec/logs - wazuh-manager-config:/var/ossec/api/agent_keys depends_on: wazuh-indexer: condition: service_healthy networks: - wazuh-net-demo wazuh-dashboard: image: wazuh/wazuh-dashboard:4.7.3 container_name: wazuh-dashboard-demo hostname: wazuh-dashboard restart: always ports: - "8443:5601" environment: - OPENSEARCH_HOSTS=["https://wazuh-indexer:9200"] - OPENSEARCH_USERNAME=admin - OPENSEARCH_PASSWORD=YourChosenStrongPassword! - OPENSEARCH_SSL_VERIFICATIONMODE=none - SERVER_SSL_ENABLED=true depends_on: wazuh-indexer: condition: service_healthy wazuh-manager: condition: service_started networks: - wazuh-net-demo networks: wazuh-net-demo: driver: bridge