Skip to content

Bsc节点部署

在ubuntu22.04上部署bsc区块链 需要更新下面2个组件到最新版本,不然同步会失败: https://github.com/bnb-chain/bsc/releases https://github.com/bnb-chain/bsc/releases

安装eth

sudo mkdir -p /bscnode/snapshot;cd /bscnode/snapshot
sudo wget https://github.com/bnb-chain/bsc/releases/download/v1.4.18/geth_linux
sudo chmod +x geth_linux
sudo ./geth_linux -h
sudo mv geth_linux /usr/local/bin/

主网初始化

cd /bscnode
sudo wget https://github.com/bnb-chain/bsc/releases/download/v1.4.18/mainnet.zip
sudo unzip mainnet.zip
sudo geth_linux --datadir node init genesis.json

下载快照

cd /bscnode/snapshot
wget -c https://github.com/bnb-chain/bsc-snapshots/raw/refs/heads/main/dist/mainnet-geth-pbss-20250208-pruneancient.csv
#查看lz4下载地址
cat mainnet-geth-pbss-20250208-pruneancient.csv
screen wget -c https://pub-c0627345c16f47ab858c9469133073a8.r2.dev/mainnet-geth-pbss-base-46479284.tar.lz4

解压快照

sudo apt-get install lz4
cd /bscnode/snapshot
lz4 -dc mainnet-geth-pbss-base-46479284.tar.lz4 | tar -xf -
sudo mv /bscnode/node/geth/chaindata/ancient /opt/
sudo mv /bscnode/snapshot/server/data-seed/geth/chaindata/* /bscnode/node/geth/chaindata/

启动BSC

cd /bscnode/
screen geth_linux --config ./config.toml --datadir ./node --cache 8000 --history.transactions=0 --syncmode full --rpc.allow-unprotected-txs --pruneancient=true --db.engine=pebble

安装caddy on docker

curl -fsSL https://get.docker.com -o install-docker.sh
sudo sh install-docker.sh
sudo mkdir -p /data/caddy/
sudo vi /data/caddy/Caddyfile
{
admin 0.0.0.0:2019
email 346452337@qq.com
}
bsc-rpc.gaojinbo.com {
reverse_proxy http://127.0.0.1:8545
}
docker run --name caddy -d --net host -e TZ=Asia/Shanghai -e DNS=223.5.5.5,8.8.8.8 -v /data/web/:/usr/share/caddy/ -v /data/caddy/config:/config -v /data/caddy/Caddyfile:/etc/caddy/Caddyfile -v /data/caddy/data:/data caddy:2.9.1-alpine

监控

#查看区块高度
echo $(($(curl -s -d '{"id":0,"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["latest",false]}' -H "Content-Type: application/json" https://bsc-rpc.gaojinbo.com/|jq .result.number|awk -F'"' '{print $2}')))
geth_linux attach https://bsc-rpc.gaojinbo.com/
eth.syncing
eth.blockNumber