อย่างเป็นทางการ ไคลเอนต์โหนดโปรโตคอล Dusk และแพลตฟอร์มสัญญาอัจฉริยะ
ไม่เสถียร : ไม่สามารถรับประกันความเสถียรของ API ได้ โครงการอยู่ระหว่างการพัฒนา
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการรันโหนด โปรดดูเอกสารของเรา:
Rusk ใช้ toolchain ทุกคืน ตรวจสอบให้แน่ใจว่าได้ติดตั้งแล้ว นอกจากนี้ ในการสร้างสัญญา WASM จำเป็นต้องมี wasm-pack
หากต้องการติดตั้งและตั้งค่า toolchain ทุกคืน และติดตั้ง wasm-pack
ให้รัน:
rustup toolchain install nightly
rustup default nightly
cargo install wasm-pack
ในการสร้าง rusk
จากแหล่งที่มา จำเป็นต้องมี Rust, GCC และ Clang เมื่อติดตั้งการพึ่งพาแล้ว คุณสามารถรันคำสั่งต่อไปนี้เพื่อรวบรวมทุกอย่าง:
make
หากต้องการดำเนินการทดสอบ:
make test
นั่นจะรวบรวมสัญญาการกำเนิดทั้งหมดและวงจรที่เกี่ยวข้องด้วย
ข้อกำหนดเบื้องต้น:
# Generate the keys used by the circuits
make keys
# Compile all the genesis contracts
make wasm
# Copy example consensus.keys
mkdir -p ~ /.dusk/rusk
cp examples/consensus.keys ~ /.dusk/rusk/consensus.keys
รันคลัสเตอร์โหนดเต็มเดี่ยวพร้อมสถานะตัวอย่าง
# Generate genesis state
cargo r --release -p rusk -- recovery state --init examples/genesis.toml -o /tmp/example.state
# Launch a local ephemeral node
DUSK_CONSENSUS_KEYS_PASS=password cargo r --release -p rusk -- -s /tmp/example.state
โหนดสามารถสร้างเป็นเครื่องพิสูจน์ได้ดังนี้:
cargo r --release --no-default-features --features prover -p rusk
โหนดพิสูจน์นี้จะสามารถเข้าถึงได้บน https://localhost:8080
แอปอย่าง Rusk-Wallet สามารถเชื่อมต่อกับแอปดังกล่าวได้เพื่อการพิสูจน์ในท้องถิ่นที่รวดเร็วและเป็นส่วนตัวยิ่งขึ้น
หากต้องการรวบรวมสัญญากำเนิดทั้งหมดโดยไม่ต้องรันเซิร์ฟเวอร์:
make contracts
หากต้องการสร้างสัญญากำเนิดเฉพาะ:
# generate the wasm for `transfer` contract
make wasm for=transfer
ดูเพิ่มเติม make help
สำหรับคำสั่งที่มีอยู่ทั้งหมด
นอกจากนี้ยังสามารถเรียกใช้โหนดชั่วคราวในเครื่องด้วย Docker ได้อีกด้วย
วิธีสร้างอิมเมจ Docker:
docker build -t rusk .
หากต้องการรัน Rusk ภายในคอนเทนเนอร์ Docker:
docker run -p 9000:9000/udp -p 8080:8080/tcp rusk
พอร์ต 9000 ใช้สำหรับ Kadcast, พอร์ต 8080 สำหรับ HTTP และ GraphQL API
ซอฟต์แวร์ Rusk ได้รับอนุญาตภายใต้ Mozilla Public License เวอร์ชัน 2.0