El funcionario Cliente de nodo de protocolo Dusk y plataforma de contrato inteligente.
Inestable : No se pueden ofrecer garantías con respecto a la estabilidad de la API, el proyecto está en desarrollo.
Para obtener más información sobre cómo ejecutar un nodo, consulte nuestros documentos:
Rusk hace uso de la cadena de herramientas nocturna, asegúrese de que esté instalada. Además, para construir los contratos WASM, se requiere wasm-pack
.
Para instalar y configurar la cadena de herramientas nocturna e instalar wasm-pack
, ejecute:
rustup toolchain install nightly
rustup default nightly
cargo install wasm-pack
Para construir rusk
desde la fuente, se requieren Rust, GCC y Clang. Una vez instaladas las dependencias, simplemente puede ejecutar el siguiente comando para compilar todo:
make
Para ejecutar pruebas:
make test
Eso también compilará todos los contratos de génesis y sus circuitos asociados.
Requisitos previos:
# 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
Ejecute un único clúster de nodo completo con un estado de ejemplo.
# 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
El nodo se puede construir como probador sólo de la siguiente manera:
cargo r --release --no-default-features --features prover -p rusk
Se podrá acceder a este nodo de prueba en https://localhost:8080
. Se pueden conectar aplicaciones como rusk-wallet para una prueba local más rápida y privada.
Para simplemente compilar todos los contratos de génesis sin ejecutar el servidor:
make contracts
Para generar un contrato de génesis específico:
# generate the wasm for `transfer` contract
make wasm for=transfer
Consulte también make help
para todos los comandos disponibles.
También es posible ejecutar un nodo efímero local con Docker.
Para crear la imagen de Docker:
docker build -t rusk .
Para ejecutar Rusk dentro de un contenedor Docker:
docker run -p 9000:9000/udp -p 8080:8080/tcp rusk
El puerto 9000 se utiliza para Kadcast, el puerto 8080 para las API HTTP y GraphQL.
El software Rusk tiene la licencia Mozilla Public License Versión 2.0.