Sequoia is a light-weight, fast, and complete implementation of a Jackal Protocol Storage Provider made for SSD-based storage and IPFS compatibility.
Head over to the Releases and download the binary for your operating system.
git clone https://github.com/JackalLabs/sequoia.git
cd sequoia
go install
Once installed, running sequoia
will show you a list of available commands.
Running sequoia init
for the first time will generate your configuration files, by default, at ~/.sequoia/
which will include config.yaml
and provider_wallet.json
for you to edit. If you wish to recover an existing proivider, copy the provider_wallet.json
from the old provider to your new set-up.
After this, make sure you fund the wallet address (can be found by running sequoia wallet address
) with over 10_000_000_000ujkl or 10k JKL tokens. The recommended amount is that plus 100 JKL.
Once the wallet is funded, running sequoia start
again will start the provider and go through the initialization process if it is a new machine. From here, keep an eye on the provider logs. Happy providing!
In order for your provider to run correctly, you will need to set up a domain for your provider pointed at the port your provider is running on and set that up in the config.yaml
. You will also need to make sure you have port 4005
(or whatever you specified in the config) open on TCP and UDP for IPFS support, or you could be penalized by the reporting system.
Default config looks like this:
######################
### Sequoia Config ###
######################
queue_interval: 10
proof_interval: 120
stray_manager:
check_interval: 30
refresh_interval: 120
hands: 2
chain_config:
bech32_prefix: jkl
rpc_addr: http://localhost:26657
grpc_addr: localhost:9090
gas_price: 0.02ujkl
gas_adjustment: 1.5
domain: https://example.com
total_bytes_offered: 1092616192
data_directory: $HOME/.sequoia/data
api_config:
port: 3333
ipfs_port: 4005
ipfs_domain: dns4/ipfs.example.com/tcp/4001
proof_threads: 1000
block_store_config:
directory: $HOME/.sequoia/datastore
type: flatfs
######################
data_directory
: directory for database files
directory
: directory for block store files
type
: flatfs
or badgerds
There are two types of block store available to sequoia:
badgerds
is a key value database that uses LSM tree to store and manage data. The storage limit is < 11TB.
flatfs
stores raw block contents on disk. Relies on underlying file system for stability and performance.
Using
badgerds
requires the block store directory to be same asdata_directory
because badgerdb is used for database as well.