version: '3.9' # Node agent deployment (each VPN server) # Usage: docker compose -f docker-compose.node.yml up -d services: node: image: nexuma/node:latest container_name: nexuma-node restart: unless-stopped environment: PORT: 3001 # URL of Core — must be reachable from this server CORE_URL: http://your-core-server:3000 # One-time registration code — generate in admin panel → Nodes # Remove this line after the node registers successfully REGISTRATION_CODE: your-one-time-code HEARTBEAT_INTERVAL_SEC: 30 volumes: - node_data:/var/lib/vpnnode ports: - "3001:3001" cap_add: - NET_ADMIN healthcheck: test: ["CMD-SHELL", "wget -qO- http://localhost:3001/health || exit 1"] interval: 30s timeout: 10s retries: 3 start_period: 15s volumes: node_data: