简介
Raiden是一种支付通道实现,可为以太坊提供可扩展,低延迟和廉价的令牌支牌。下面具体说一下,安装过程。
安装
总体来说安装有点麻烦,我是从源码出发去安装的,不知道通过其它途径会不会简单点。
安装流程
安装有好几种方式
- 从GitHub安装:下载最新版本
raiden-<version>-linux-x86_64.tar.gz
,然后解压缩.(链接我就不放了,统一看下面的链接,里面有详解) - 使用pip安装:
pip install raiden
- 通过Docker安装:具体看下面的文档
- 对于开发人员,如果您打算使用Raiden源代码进行开发,或者二进制发行版不适用于您的系统,则需要从源码安装,具体安装过程我会在下面详细说明
文档:https://raiden-network.readthedocs.io/en/stable/overview_and_guide.html#for-developers
从源码安装Raiden
安装依赖项
首先安装依赖项,从源码编译安装,需要具备编译的环境
安装solc
我是通过npm / Node.js
来安装solcjs
,solc-js项目是通过使用Emscripten 从C ++ solc派生的,所以需要安装g++
.
sudo apt-get install g++
之后需要安装npm/node.js,我建议大家使用源码安装,通过命令安装是安装不上的。不详细介绍了,我也是参考的其他博客:https://www.cnblogs.com/shengtaiyuan/p/10164823.html
make的时候需要很长时间,耐心等待一下,还有如果./configue出现问题,直接将问题复制到百度或谷歌很快就能解决。
安装完可以 npm -v
查看版本。
然后再通过命令安装solc
npm install -g solc
第二个依赖—Py-EVM
文档中说的是让安装pyethapp
,但是它已经不再更新了,我根据里面的推荐安装了Py-EVM
。安装过程如下:
首先需要构建一个python的虚拟环境,对了,这里需要说明一下,在Py-EVM
文档中它要求使用python3.6-dev
,但是Raiden原文档中要求使用python3.7-dev
,所以这里我们安装Py-EVM
也要使用python3.7-dev
,如果升级python时不成功,找不到包,需要修改一下:
sudo add-apt-repository ppa:jonathonf/python-3.6
sudo apt-get update
sudo apt-get install python3.6-dev
这样就可以了,给出文档:Py-EVM
再说一下装python虚拟环境:
pip3 install virtualenv
virtualenv -p python3.7 venv
第二行代码中的python可以指定你想要安装的虚拟环境的python版本,这里我们设置为 python3.7
。
在该目录中将软件包与其他所有全局软件包隔离安装。
要激活,我们必须将虚拟目录采购它
. venv/bin/activate
关闭是
deactivate
最后,我们可以通过pip3安装该软件包。
pip3 install -U py-evm
给出github源码链接:https://github.com/ethereum/py-evm
从源安装
首先git clone 源码:
git clone https://github.com/raiden-network/raiden.git
这里说一个小技巧,git clone的速度很慢,或者不能链接,那么我们可以通过国内的镜像网站:码云
,自己注册一下,然后新建仓库,再通过git clone
进行下载即可,速度非常快。当然也可以直接搜源码。
然后我们:
cd raiden
这些操作都需要在虚拟环境中进行,然后:
make install-dev
静静等待安装完成就可以了。
给出一张运行截图:
你是不是以为这样就完了???
那是不可能的!!!
下面还有很长的路要走,慢慢来:
运行Raiden,还需要安装以太坊或者OpenEthereum。来同步以太坊的节点,以支持Raiden。
安装go-ethereum
我们在这个连接中:https://github.com/ethereum/go-ethereum/wiki/Installation-Instructions-for-Ubuntu
选择ubuntu进行查看,从源码安装以太坊,其中git clone 也可以使用码云。
以为这个是用golang编写的,所以我们需要安装golang的环境。
给一个亲测可行的文章链接:
https://www.cnblogs.com/swlj/articles/11836198.html
安装完成之后还需要做一件事,就是设置goproxy,因为go的包比较难以下载,这是咱们中国的go package 源。它里面写的很详细,我不再介绍了。
设置完这些,我们就可以安装了:
sudo apt-get install -y build-essential
最后,geth使用以下命令构建程序:
cd go-ethereum
make geth
然后我们可以通过 ./build/bin/geth
同步以太坊的节点,具体使用过程请参考原文档。
安装奇偶校验客户端
rustup安装
苦苦找寻安装教程,终于找到一篇:https://blog.csdn.net/zhizhengguan/article/details/85164553
这里面最有用的信息就是:使用安装脚本rustup安装statle版本的rust
,我尝试了很多种方法,就这一种可以使用,主要还是因为咱们访问不了外网。
通过使用命令:
curl -sf -L https://static.rust-lang.org/rustup.sh | sh
就开始安装了,需要等待差不多半个小时才安装完成,安装完成之后需要设置一下环境变量,不然使用不太方便:
打开文件:
vim ~/.bashrc
将这段代码放入该文件:
export PATH="$HOME/.cargo/bin:$PATH"
保存推出,然后更新一下:
source ~/.bashrc
即可:rustup
,会显示下面图片中的内容。
这里说一下,安装以太坊等软件,我是在虚拟环境外面做的,因为golang的环境是没办法进入python虚拟环境的(我没有找到方法,可能也可以,欢迎大家去尝试)。
安装Perl
直接写安装过程吧:
wget https://www.cpan.org/src/5.0/perl-5.32.0.tar.gz
tar -xzf perl-5.32.0.tar.gz
cd perl-5.32.0
./Configure -des -Dprefix=$HOME/localperl
make
make test
make install
小技巧,如果我们的服务器无法下载,那么可以使用本机链接外网下载,再通过下面这个方式将文件传到服务器:
scp -r localfile.格式 username@ip:/home/username/文件夹
make
需要一段时间才可以。
make test
也需要一段时间,好像这个比上面的时间要长。
yasm
sudo apt-get install yasm
这样就可以了
OpenEthereum
安装完前面的rust,perl,yasm
就可以安装这个了,这个是功能丰富的多网络以太坊客户端。
我们还是从源码编译安装:
$ git clone https://github.com/openethereum/openethereum
$ cd openethereum
$ cargo build --release --features final
这将在./target/release子目录中生成一个可执行文件。
要手动启动OpenEthereum,只需运行:
$ ./target/release/openethereum