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/snapshotsudo wget https://github.com/bnb-chain/bsc/releases/download/v1.4.18/geth_linuxsudo chmod +x geth_linuxsudo ./geth_linux -hsudo mv geth_linux /usr/local/bin/
主网初始化
cd /bscnodesudo wget https://github.com/bnb-chain/bsc/releases/download/v1.4.18/mainnet.zipsudo unzip mainnet.zipsudo geth_linux --datadir node init genesis.json
下载快照
cd /bscnode/snapshotwget -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.csvscreen wget -c https://pub-c0627345c16f47ab858c9469133073a8.r2.dev/mainnet-geth-pbss-base-46479284.tar.lz4
解压快照
sudo apt-get install lz4cd /bscnode/snapshotlz4 -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.shsudo sh install-docker.shsudo 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.syncingeth.blockNumber