name: whitewater-dev x-node: &node build: context: . environment: &node-environment WHITEWATER_SEEDS: node1:7070,node2:7070,node3:7070 WHITEWATER_NODE_CAPACITY: 100 WHITEWATER_ADMIN_API_KEY: ${WHITEWATER_ADMIN_API_KEY:-whitewater-local-development-admin-key} WHITEWATER_CONTROL_NODES: 1@node1:7070,2@node2:7070,3@node3:7070 WHITEWATER_CONTROL_PLANE_KEY: ${WHITEWATER_CONTROL_PLANE_KEY:-whitewater-local-development-control-key} WHITEWATER_INTERNAL_TRANSPORT: ${WHITEWATER_INTERNAL_TRANSPORT:-insecure} WHITEWATER_AUTO_SPLIT_INTERVAL_MS: ${WHITEWATER_AUTO_SPLIT_INTERVAL_MS:-2000} WHITEWATER_AUTO_SPLIT_APPEND_RATE: ${WHITEWATER_AUTO_SPLIT_APPEND_RATE:-10000} WHITEWATER_AUTO_SPLIT_SUSTAINED_SAMPLES: ${WHITEWATER_AUTO_SPLIT_SUSTAINED_SAMPLES:-3} WHITEWATER_AUTO_SPLIT_COOLDOWN_SAMPLES: ${WHITEWATER_AUTO_SPLIT_COOLDOWN_SAMPLES:-30} WHITEWATER_AUTO_MERGE_APPEND_RATE: ${WHITEWATER_AUTO_MERGE_APPEND_RATE:-10} WHITEWATER_AUTO_MERGE_SUSTAINED_SAMPLES: ${WHITEWATER_AUTO_MERGE_SUSTAINED_SAMPLES:-30} WHITEWATER_AUTO_MERGE_COOLDOWN_SAMPLES: ${WHITEWATER_AUTO_MERGE_COOLDOWN_SAMPLES:-60} restart: unless-stopped services: node1: <<: *node hostname: whitewater-node1 ports: - "7071:7070" environment: <<: *node-environment WHITEWATER_NODE_ID: whitewater-node1 WHITEWATER_CONTROL_NODE_ID: 1 WHITEWATER_ADVERTISE_URL: http://node1:7070 volumes: - whitewater-node1-data:/var/lib/whitewater node2: <<: *node hostname: whitewater-node2 ports: - "7072:7070" environment: <<: *node-environment WHITEWATER_NODE_ID: whitewater-node2 WHITEWATER_CONTROL_NODE_ID: 2 WHITEWATER_ADVERTISE_URL: http://node2:7070 volumes: - whitewater-node2-data:/var/lib/whitewater node3: <<: *node hostname: whitewater-node3 ports: - "7073:7070" environment: <<: *node-environment WHITEWATER_NODE_ID: whitewater-node3 WHITEWATER_CONTROL_NODE_ID: 3 WHITEWATER_ADVERTISE_URL: http://node3:7070 volumes: - whitewater-node3-data:/var/lib/whitewater volumes: whitewater-node1-data: whitewater-node2-data: whitewater-node3-data: