使用安装脚本在ubuntu服务器上搭建Electrumx的运行环境很简单,使用安装脚本如下操作即可:
安装electrumx
sudo wget https://raw.githubusercontent.com/bauerj/electrumx-installer/master/bootstrap.sh -O - | bash
然后修改electrumx的配置文件, 配置文件位置/etc/electrumx.conf
配置文件修改后使用sudo service electrumx start启动服务即可。
但在实际开发中可能需要直接调试Electrumx的代码或者进行一些扩展,为了方便一些,还是在工作电脑mac上单独安装Electrumx的执行环境。
1、安装rocksdb(也可以安装leveldb,我使用的是rocksdb)
brew install rocksdb
2、使用conda创建虚拟环境(我的mac使用的conda管理虚拟环境,如果你的没有单独去管理虚拟环境,直接使用pip安装下面需要的第三方库即可)
conda create -n coldlar_venv python=3*
切换到coldlar_venv
source activate coldlar_venv
切换到虚拟环境之后,使用pip安装需要的库aiohttp、aiorpcX、pylru、python-rocksdb(使用rocksdb安装这个)、plyvel(使用leveldb安装这个)
3、使用openssl创建认证文件,分别执行以下命令进行创建,(如果不使用ssl协议的话,也可忽略这个步骤)
mkdir -p /etc/electrumx/
cd /etc/electrumx
openssl genrsa -des3 -passout pass:xxxx -out server.pass.key 2048
openssl rsa -passin pass:xxxx -in server.pass.key -out server.key
rm server.pass.key
openssl req -new -key server.key -batch -out server.csr
openssl x509 -req -days 1825 -in server.csr -signkey server.key -out server.crt
rm server.csr
chmod 600 /etc/electrumx/server*
4、下载Electrumx源码
https://github.com/kyuupichan/electrumx
5、在Pycharm中创建Python项目并导入Electrumx的源码,并在运行electrumx_server.py前设置环境变量
参数设置参考文档
https://electrumx.readthedocs.io/en/latest/environment.html
特别注意
TCP_PORT和SSL_PORT都是需要同步到节点的高度时才开放(如需一开始就开放可以修改代码来实现).而RPC_PORT是一开始就开放,RPC_PORT默认是8000.