Der Beamte Dusk-Protokollknoten-Client und Smart-Contract-Plattform.
Instabil : Es kann keine Garantie für die API-Stabilität gegeben werden, das Projekt befindet sich in der Entwicklung.
Weitere Informationen zum Ausführen eines Knotens finden Sie in unseren Dokumenten:
Rusk nutzt die Nightly-Toolchain. Stellen Sie sicher, dass sie installiert ist. Darüber hinaus ist zum Erstellen der WASM-Verträge wasm-pack
erforderlich.
Führen Sie Folgendes aus, um die Nightly-Toolchain zu installieren und einzurichten und wasm-pack
zu installieren:
rustup toolchain install nightly
rustup default nightly
cargo install wasm-pack
Um rusk
aus dem Quellcode zu erstellen, sind Rust, GCC und Clang erforderlich. Sobald die Abhängigkeiten installiert sind, können Sie einfach den folgenden Befehl ausführen, um alles zu kompilieren:
make
So führen Sie Tests durch:
make test
Dadurch werden auch alle Genesis-Verträge und die zugehörigen Schaltkreise zusammengestellt.
Voraussetzungen:
# 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
Führen Sie einen einzelnen Full-Node-Cluster mit Beispielstatus aus.
# 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
Der Knoten kann nur wie folgt als Prüfer erstellt werden:
cargo r --release --no-default-features --features prover -p rusk
Auf diesen Prüferknoten kann unter https://localhost:8080
zugegriffen werden. Apps wie das Rusk-Wallet können damit verbunden werden, um eine schnellere und privatere lokale Prüfung zu ermöglichen.
Um einfach alle Genesis-Verträge zu kompilieren, ohne den Server auszuführen:
make contracts
So generieren Sie einen bestimmten Genesis-Vertrag:
# generate the wasm for `transfer` contract
make wasm for=transfer
Siehe auch make help
für alle verfügbaren Befehle
Es ist auch möglich, mit Docker einen lokalen, kurzlebigen Knoten auszuführen.
So erstellen Sie das Docker-Image:
docker build -t rusk .
So führen Sie Rusk in einem Docker-Container aus:
docker run -p 9000:9000/udp -p 8080:8080/tcp rusk
Port 9000 wird für Kadcast verwendet, Port 8080 für die HTTP- und GraphQL-APIs.
Die Rusk-Software ist unter der Mozilla Public License Version 2.0 lizenziert.