# Three independent validators, separate volumes, no miner or market auto-starts. x-node-environment: &node-environment WIKIDECK_NETWORK: testnet WIKIDECK_PAYMENT_MODE: mock WIKIDECK_MARKET_RUNTIME_ENABLED: "${WIKIDECK_MARKET_RUNTIME_ENABLED:-0}" WIKIDECK_MARKET_ENABLED: "${WIKIDECK_MARKET_ENABLED:-1}" WIKIDECK_MARKET_TRADING_ENABLED: "${WIKIDECK_MARKET_TRADING_ENABLED:-1}" WIKIDECK_MARKET_HOST_FEE_ADDRESS: "${WIKIDECK_MARKET_HOST_FEE_ADDRESS:-44xHcCdFhW4b951yBHpkTPdLSJ85qTCnFQ8N7m96TtqqRL3dbhzbEH4fe2SJ3a6ESHcNyzCYH5nYJ9ActR1JtkeA7QYGbQv}" WIKIDECK_MARKET_FEE_BPS: "${WIKIDECK_MARKET_FEE_BPS:-250}" WIKIDECK_MARKET_CONFIRMATIONS: "${WIKIDECK_MARKET_CONFIRMATIONS:-10}" services: node-a: image: wikideck:testnet build: { context: ., target: runtime } ports: ["127.0.0.1:3101:3001"] environment: <<: *node-environment PUBLIC_ORIGIN: http://127.0.0.1:3101 WIKIDECK_PEERS: http://node-b:3001,http://node-c:3001 WIKIDECK_ALLOW_PRIVATE_PEERS: "1" volumes: ["testnet-a:/app/data"] init: true read_only: true tmpfs: ["/tmp:size=32m,mode=1777,noexec,nosuid"] cap_drop: [ALL] security_opt: ["no-new-privileges:true"] pids_limit: 128 mem_limit: 1g cpus: 1.0 stop_grace_period: 30s node-b: image: wikideck:testnet build: { context: ., target: runtime } ports: ["127.0.0.1:3102:3001"] environment: <<: *node-environment PUBLIC_ORIGIN: http://127.0.0.1:3102 WIKIDECK_PEERS: http://node-a:3001,http://node-c:3001 WIKIDECK_ALLOW_PRIVATE_PEERS: "1" volumes: ["testnet-b:/app/data"] init: true read_only: true tmpfs: ["/tmp:size=32m,mode=1777,noexec,nosuid"] cap_drop: [ALL] security_opt: ["no-new-privileges:true"] pids_limit: 128 mem_limit: 1g cpus: 1.0 stop_grace_period: 30s node-c: image: wikideck:testnet build: { context: ., target: runtime } ports: ["127.0.0.1:3103:3001"] environment: <<: *node-environment PUBLIC_ORIGIN: http://127.0.0.1:3103 WIKIDECK_PEERS: http://node-a:3001,http://node-b:3001 WIKIDECK_ALLOW_PRIVATE_PEERS: "1" volumes: ["testnet-c:/app/data"] init: true read_only: true tmpfs: ["/tmp:size=32m,mode=1777,noexec,nosuid"] cap_drop: [ALL] security_opt: ["no-new-privileges:true"] pids_limit: 128 mem_limit: 1g cpus: 1.0 stop_grace_period: 30s volumes: testnet-a: testnet-b: testnet-c: