0G DA Client node
This document outlines the steps to setup your own DA client.
⚙️ Hardware Requirement
- Memory: 8 GB
- CPU: 2 cores
- Bandwidth: 100 MBps for Download / Upload
Installation dependencies
sudo apt-get update
sudo apt-get install cmake
Install 0G DA Client
cd $HOME
git clone -b v1.0.0-testnet https://github.com/0glabs/0g-da-client.git
cd 0g-da-client
make build
Start DA client in screen mode
sudo apt-get install screen
# enter new screen
screen -S DAClient
Set 0G DA client variables
# pull variables
JSON_PORT=$(sed -n '/\[json-rpc\]/,/^address/ s/address = "0.0.0.0:\([0-9]*\)".*/\1/p' $HOME/.0gchain/config/app.toml)
ETH_RPC_ENDPOINT=http://$(wget -qO- eth0.me):$JSON_PORT
SOCKET_ADDRESS=http://$(wget -qO- eth0.me):34000
# print variables
echo JSON PORT:$JSON_PORT
echo ETH_RPC_ENDPOINT:$ETH_RPC_ENDPOINT
echo SOCKET_ADDRESS:$SOCKET_ADDRESS
Export private key temporary
PRIVATE_KEY=$(0gchaind keys unsafe-export-eth-key $WALLET_NAME)
echo PRIVATE_KEY:$PRIVATE_KEY
Start 0G DA client node
cd $HOME/0g-da-client/disperser
./bin/combined \
--chain.rpc $ETH_RPC_ENDPOINT \
--chain.private-key $PRIVATE_KEY \
--chain.receipt-wait-rounds 180 \
--chain.receipt-wait-interval 1s \
--chain.gas-limit 2000000 \
--combined-server.use-memory-db \
--combined-server.storage.kv-db-path ./root/0g-storage-kv/run \
--combined-server.storage.time-to-expire 300 \
--disperser-server.grpc-port 51001 \
--batcher.da-entrance-contract 0xDFC8B84e3C98e8b550c7FEF00BCB2d8742d80a69 \
--batcher.da-signers-contract 0x0000000000000000000000000000000000001000 \
--batcher.finalizer-interval 20s \
--batcher.confirmer-num 3 \
--batcher.max-num-retries-for-sign 3 \
--batcher.finalized-block-count 50 \
--batcher.batch-size-limit 500 \
--batcher.encoding-interval 3s \
--batcher.encoding-request-queue-size 1 \
--batcher.pull-interval 10s \
--batcher.signing-interval 3s \
--batcher.signed-pull-interval 20s \
--encoder-socket $SOCKET_ADDRESS \
--encoding-timeout 600s \
--signing-timeout 600s \
--chain-read-timeout 12s \
--chain-write-timeout 13s \
--combined-server.log.level-file trace \
--combined-server.log.level-std trace
Check DAClient screen
screen -r DAClient
Log examples
DEBUG[07-31|05:46:32.186|github.com/0glabs/0g-da-client/disperser/batcher/batcher.go:189] [batcher] no encoded results to make a batch with caller=batcher.go:189
TRACE[07-31|05:46:34.185|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:153] [encodingstreamer] requesting processing blobs.. caller=encoding_streamer.go:153
INFO [07-31|05:46:34.185|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:168] [encodingstreamer] no new metadatas to encode caller=encoding_streamer.go:168
INFO [07-31|05:46:34.302|github.com/0glabs/0g-da-client/disperser/batcher/finalizer.go:126] [finalizer] latest finalized block number updated number=468,776 caller=finalizer.go:126
TRACE[07-31|05:46:37.185|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:153] [encodingstreamer] requesting processing blobs.. caller=encoding_streamer.go:153
INFO [07-31|05:46:37.186|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:168] [encodingstreamer] no new metadatas to encode caller=encoding_streamer.go:168
INFO [07-31|05:46:39.313|github.com/0glabs/0g-da-client/disperser/batcher/finalizer.go:126] [finalizer] latest finalized block number updated number=468,777 caller=finalizer.go:126
TRACE[07-31|05:46:40.185|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:153] [encodingstreamer] requesting processing blobs.. caller=encoding_streamer.go:153
INFO [07-31|05:46:40.185|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:168] [encodingstreamer] no new metadatas to encode caller=encoding_streamer.go:168
INFO [07-31|05:46:42.215|github.com/0glabs/0g-da-client/disperser/batcher/batcher.go:279] [batcher] Creating batch ts=2024-07-31T05:46:42+0200 caller=batcher.go:279
TRACE[07-31|05:46:42.215|github.com/0glabs/0g-da-client/disperser/batcher/encoded_blob_store.go:165] consumed encoded results fetched=0 encodedSize=0 caller=encoded_blob_store.go:165
DEBUG[07-31|05:46:42.215|github.com/0glabs/0g-da-client/disperser/batcher/batcher.go:189] [batcher] no encoded results to make a batch with caller=batcher.go:189
TRACE[07-31|05:46:43.187|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:153] [encodingstreamer] requesting processing blobs.. caller=encoding_streamer.go:153
INFO [07-31|05:46:43.187|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:168] [encodingstreamer] no new metadatas to encode caller=encoding_streamer.go:168
TRACE[07-31|05:46:46.185|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:153] [encodingstreamer] requesting processing blobs.. caller=encoding_streamer.go:153
INFO [07-31|05:46:46.185|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:168] [encodingstreamer] no new metadatas to encode caller=encoding_streamer.go:168
TRACE[07-31|05:46:49.186|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:153] [encodingstreamer] requesting processing blobs.. caller=encoding_streamer.go:153
INFO [07-31|05:46:49.186|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:168] [encodingstreamer] no new metadatas to encode caller=encoding_streamer.go:168
INFO [07-31|05:46:49.342|github.com/0glabs/0g-da-client/disperser/batcher/finalizer.go:126] [finalizer] latest finalized block number updated number=468,778 caller=finalizer.go:126
TRACE[07-31|05:46:52.185|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:153] [encodingstreamer] requesting processing blobs.. caller=encoding_streamer.go:153
INFO [07-31|05:46:52.185|github.com/0glabs/0g-da-client/disperser/batcher/encoding_streamer.go:168] [encodingstreamer] no new metadatas to encode caller=encoding_streamer.go:168
INFO [07-31|05:46:52.186|github.com/0glabs/0g-da-client/disperser/batcher/batcher.go:279] [batcher] Creating batch ts=2024-07-31T05:46:52+0200 caller=batcher.go:279
TRACE[07-31|05:46:52.186|github.com/0glabs/0g-da-client/disperser/batcher/encoded_blob_store.go:165] consumed encoded results fetched=0 encodedSize=0 caller=encoded_blob_store.go:165
Last updated