This script helps you to Run boundless prover without docker environment
Current version: v0.13.0
English | 中文
-
Copy the following command to the console and wait for the script to download the dependency and prover binaries, depending on your internet download speed, this usually takes around 25-30 minutes
apt update apt install -y curl apt install -y screen apt install -y sqlite3 curl -L "https://raw.githubusercontent.com/FragIfty01/boundless-prover-1/refs/heads/main/setup.sh" -o setup.sh bash setup.sh -
Select the GPU IDs you want to use, separated by commas, for example

0 # Use GPU with ID 0 0,1 # Use GPU with ID 0 and 1
-
Select the networks you want to join, separated by commas, for example

1 # Join the Eth Sepolia testnet 1,2 # Join the Eth Sepolia and Base Sepolia testnet 3 # Join the Base mainnet
then enter the RPC URL and wallet private key for the chosen network
-
Restart the console or run the following command
source /root/.cargo/env source /root/.bashrc
-
Deposit funds into the network you want to join ( Deduct <> signs)
- Base mainnet
export RPC_URL=<BASE_MAINNET_RPC_URL> export PRIVATE_KEY=<PRIVATE_KEY> source /app/.env.base boundless account deposit-stake 10
-
Test that bento is working properly
RUST_LOG=info bento_cli -c 32
-
Benchmarking bento, you can get a reference value for the
peak_prove_khzparameter hereexport RPC_URL=<TARGET_CHAIN_RPC_URL> boundless proving benchmark --request-ids <IDS>
-
Modify the broker's configuration file, the path is
/app/broker<N>.toml,Nis your broker number- Base mainnet
- nano /app/broker3.toml
- Base mainnet
-
Run the broker
supervisorctl start broker:*
export RPC_URL=<TARGET_CHAIN_RPC_URL>
export PRIVATE_KEY=<KEY>
boundless account stake-balanceAll of them are independent commands to start , stop or restart a service. Your prover is running through supervisord so use supervisorctl commands to manage it
- Dependencies:
supervisorctl start dependencies:* supervisorctl stop dependencies:* supervisorctl restart dependencies:*
- Bento:
supervisorctl start bento:* supervisorctl stop bento:* supervisorctl restart bento:*
- Broker:
supervisorctl start broker:* supervisorctl stop broker:* supervisorctl restart broker:*
- Logs:
supervisorctl tail -f broker:broker1 # Eth Sepolia supervisorctl tail -f broker:broker2 # Base Sepolia supervisorctl tail -f broker:broker3 # Base mainnet
bento, is a collective term for all the components used to generate proofsbroker, is responsible for market interactions including bidding on jobs, locking them, issuing job requests to the Bento proving cluster, and submitting proof fulfillments onchainbento_cli, is command-line interface for communicating withbentoboundless, is command-line interface for interacting with the Boundless Marketsupervisord, process management service, used here as an alternative to dockersupervisorctl, is command-line interface for communicating withsupervisord
- Installation of system dependencies, rust and RISC Zero toolchain
- Install bento, broker, bento_cli, boundless and other binaries needed to generate the proofs
- Generate supervisord configuration file
- Initialize the database, start dependent services and bento
- Printing common commands
- The script will generate N
gpu_prove_agentbased on the N GPU ID information you enter and Nbrokerbased on the N network information you enter - This script does not guarantee that your prover will get the task
- The current broker uses the default parameters, you need to modify the
/app/broker<N>.tomlfile