存档

文章标签 ‘geth’

自建用于bzz的geth(swap-endpoint)RPC(linux、windows详细部署步骤)

2021年6月7日 没有评论

最近由于以太坊很火,很多朋友需求自己架设自己的rpc服务。这里给出两个方案,一个是linux一个是win的。

初自建geth(endpoint)用于保证Swarm挖矿持续不中断为了更好的服务自己。为什么自建RPC?
自建geth的好处:
1、不受官方服务器限制、保证多节点24*7连接性;
2、自建geth没有任何限制,可以多节点共用一台;
3、bee0.6.x以上版本连接请求过快,官方免费rpc满足不了。

Linux推荐使用系统:Ubuntu18.04(centos要下载软件部署)
安装git

1
2
3
4
apt-get install software-properties-common -y
sudo add-apt-repository ppa:git-core/ppa -y
sudo apt-get update -y
sudo apt-get install git -y

查看是否安装成功

1
git --version

有显示版本号就是安装成功。
安装geth

1
2
3
4
sudo apt-get install software-properties-common -y
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update -y
sudo apt-get install ethereum -y

查看geth是否安装成功

1
geth --help

有信息反馈就是OK
安装screen让rpc在screen里面运行

1
apt-get install screen -y

创建一个叫geth的screen

1
screen -S geth

在screen里面运行启动命令

1
geth --cache=2048 --goerli --rpc --rpcaddr 0.0.0.0 --rpcport=8545 --rpcvhosts=* --rpcapi='eth,net,rpc'

等着他同步完成就可以了。
查看

1
screen -r geth

同步中的状态

Linux centos7/8
1. 下载go-ethereum

1
wget https://gethstore.blob.core.windows.net/builds/geth-linux-amd64-1.10.3-991384a7.tar.gz

2. 解压 go-ethereum

1
tar -zxvf geth-linux-amd64-1.10.3-991384a7.tar.gz

3. 安装 go-ethereum

1
cp geth-linux-amd64-1.10.3-991384a7/geth /usr/bin/

三、运行go-ethereum

1. 启动一个名为geth的后台

1
screen -R geth

输入上面的命令后,按两次回车会新建一个后台。

2. 查看本机本地ip

1
ip address

3. 运行go-ethereum

1
geth --goerli --http --http.addr=1.1.1.1 --datadir /home/gethdata

#1.1.1.1换成自己ip
#–datadir /www/gethdata 指定存文件目录

注意: ip 需要使用第二步取得的ip取代

Ctrl+a+d退出 这玩意显示有点毛病

4. 检测go-ethereum 是否成功安装

1
lsof -i:8545

如果输出不为空,类似下图:

你已成功安装自己的go-ethereum 节点!不过还需要几个小时来等待它同步区块。

四、使用go-ethereum

在swarm节点上,更改配置文件的swap-endpoint字段:

swap-endpoint: http://1.1.1.1:8545 (1.1.1.1换成自己ip)
在你的SwarmBee的yaml配置文件里面修改好然后保存重启bee即可
如果你的Geth未同步完区块高度的话,则Bee会在Geth同步完后开始工作。

windows安装2012/2016/2019
这个就容易的多。直接去主网上下载。https://geth.ethereum.org/downloads/

1.下载https://geth.ethereum.org/downloads/
2.双击安装
3.geth.exe –goerli –http –http.addr=1.1.1.1 –datadir d:\gethdata
(自己建立一个放文件的gethdata)这个步骤不说明了。