services: axondb-search: image: ghcr.io/axonops/axondb-search:3.7.0 environment: - discovery.type=single-node - OPENSEARCH_HEAP_SIZE=512m volumes: - axondb-search:/var/lib/opensearch healthcheck: test: ["CMD", "/usr/local/bin/healthcheck.sh", "readiness"] interval: 10s timeout: 5s retries: 10 start_period: 120s axon-server: depends_on: axondb-search: condition: service_healthy image: registry.axonops.com/axonops-public/axonops-docker/axon-server:latest environment: - SEARCH_DB_HOSTS=https://axondb-search:9200 - SEARCH_DB_USERNAME=admin - SEARCH_DB_PASSWORD=MyS3cur3P@ss2025 - SEARCH_DB_SKIP_VERIFY=true healthcheck: test: ["CMD", "curl", "-sf", "127.0.0.1:8080"] interval: 10s timeout: 5s start_period: 10s axon-dash: depends_on: axon-server: condition: service_healthy image: registry.axonops.com/axonops-public/axonops-docker/axon-dash:latest environment: - AXONSERVER_PRIVATE_ENDPOINTS=http://axon-server:8080 ports: - 3000:3000 healthcheck: test: ["CMD", "curl", "-sf", "127.0.0.1:3000"] interval: 10s timeout: 5s start_period: 10s cassandra-0: image: registry.axonops.com/axonops-public/axonops-docker/cassandra:${CASSANDRA_VERSION:-5.0} hostname: cassandra-0 restart: always volumes: - cassandra-0:/var/lib/cassandra environment: - CASSANDRA_CLUSTER_NAME=demo-cluster - CASSANDRA_SEEDS=cassandra-0 - CASSANDRA_ENDPOINT_SNITCH=GossipingPropertyFileSnitch - CASSANDRA_DC=dc1 - CASSANDRA_RACK=rack0 - CASSANDRA_BROADCAST_RPC_ADDRESS=127.0.0.1 - CASSANDRA_NATIVE_TRANSPORT_PORT=9042 - MAX_HEAP_SIZE=256m - HEAP_NEWSIZE=50m - AXON_AGENT_SERVER_HOST=axon-server - AXON_AGENT_SERVER_PORT=1888 - AXON_AGENT_ORG=demo - AXON_AGENT_TLS_MODE=none - AXON_AGENT_LOG_OUTPUT=file ports: - "9042:9042" healthcheck: test: ["CMD", "nc", "-z", "127.0.0.1", "9042"] interval: 10s timeout: 5s retries: 5 start_period: 60s cassandra-1: depends_on: cassandra-0: condition: service_healthy image: registry.axonops.com/axonops-public/axonops-docker/cassandra:${CASSANDRA_VERSION:-5.0} hostname: cassandra-1 restart: always volumes: - cassandra-1:/var/lib/cassandra environment: - CASSANDRA_CLUSTER_NAME=demo-cluster - CASSANDRA_SEEDS=cassandra-0 - CASSANDRA_ENDPOINT_SNITCH=GossipingPropertyFileSnitch - CASSANDRA_DC=dc1 - CASSANDRA_RACK=rack1 - CASSANDRA_BROADCAST_RPC_ADDRESS=127.0.0.1 - CASSANDRA_NATIVE_TRANSPORT_PORT=9043 - MAX_HEAP_SIZE=256m - HEAP_NEWSIZE=50m - AXON_AGENT_SERVER_HOST=axon-server - AXON_AGENT_SERVER_PORT=1888 - AXON_AGENT_ORG=demo - AXON_AGENT_TLS_MODE=none - AXON_AGENT_LOG_OUTPUT=file ports: - "9043:9043" healthcheck: test: ["CMD", "nc", "-z", "127.0.0.1", "9043"] interval: 10s timeout: 5s retries: 5 start_period: 60s cassandra-2: depends_on: cassandra-1: condition: service_healthy image: registry.axonops.com/axonops-public/axonops-docker/cassandra:${CASSANDRA_VERSION:-5.0} hostname: cassandra-2 restart: always volumes: - cassandra-2:/var/lib/cassandra environment: - CASSANDRA_CLUSTER_NAME=demo-cluster - CASSANDRA_SEEDS=cassandra-0 - CASSANDRA_ENDPOINT_SNITCH=GossipingPropertyFileSnitch - CASSANDRA_DC=dc1 - CASSANDRA_RACK=rack2 - CASSANDRA_BROADCAST_RPC_ADDRESS=127.0.0.1 - CASSANDRA_NATIVE_TRANSPORT_PORT=9044 - MAX_HEAP_SIZE=256m - HEAP_NEWSIZE=50m - AXON_AGENT_SERVER_HOST=axon-server - AXON_AGENT_SERVER_PORT=1888 - AXON_AGENT_ORG=demo - AXON_AGENT_TLS_MODE=none - AXON_AGENT_LOG_OUTPUT=file ports: - "9044:9044" healthcheck: test: ["CMD", "nc", "-z", "127.0.0.1", "9044"] interval: 10s timeout: 5s retries: 5 start_period: 60s volumes: axondb-search: cassandra-0: cassandra-1: cassandra-2: