jdchain安装部署
一、安装包
选择并下载指定版本的jdchain-peer*.zip、jdchain-gateway*.zip安装包。
安装包下载地址:https://blockchain-jd-com.github.io/#/download

这是我本地下载好的安装包

二、安装包上次到虚拟机,如果是部署到服务器上面,就上次到服务器,就是linux系统上面

peer节点安装包目录结构
jdchain-peer-${version}.zip,解压完后的安装包结构如下:
bin相关命令操作目录,使用前请配置执行权限jdchain-cli.sh命令行工具ledger-init.sh账本初始化工具peer-startup.sh节点启动脚本peer-shutdown.sh节点关闭脚本
config配置init初始化配置ledger.init账本配置local.conf本地配置bftsmartbftsmart.configBFT-SMaRt共识初始化配置
raftraft.configRaft共识初始化配置
mqmq.configMQ共识初始化配置
log4j2-peer.xmllog4j2配置,可根据实际情况修改替换application-peer.propertiesspring配置ledger-binding.conf账本配置,账本初始化成功后会自动生成
libs项目运行依赖第三方及非system依赖包system项目运行系统包runtime解压时不存在,存放运行时数据manager管理工具运行包logs日志
网关安装包目录结构
jdchain-gateway-${version}.zip,解压完后的安装包结构如下:
binstartup.sh启动脚本shutdown.sh停止脚本
configgateway.conf网关配置log4j2-gw.xml log4j2配置,可根据实际情况修改替换application-gw.propertiesspring配置
lib运行时所需jar包logs日志runtime解压时不存在,存放运行时数据
三、配置生成
解压到指定路径下
unzip jdchain-peer-1.6.5.RELEASE.zip -d /opt/softwares/jdchain-peer

进入解压后文件bin目录下,修改该目录下.sh可执行权限

如创建四节点,单网关基于BFT-SMaRt共识、KEYPAIR身份认证模式的单机运行网络:
./jdchain-cli.sh testnet config --algorithm ED25519 --ledger-name testnet --password 123456 --peer-zip ../../jdchain-peer-1.6.5.RELEASE.zip --gw-zip ../../jdchain-gateway-1.6.5.RELEASE.zip --consensus BFTSMART --peer-size 4 --init-hosts 127.0.0.1 --peer-hosts 127.0.0.1 --peer-consensus-ports 10080,10082,10084,10086 --peer-manage-ports 7080,7081,7082,7083 --init-ports 8800,8810,8820,8830 --gw-port 8080 --output /home/imuge/jd/nodes/
执行上述指令,输出如下:

成功创建账本初始化配置文件,会在/home/nodes目录下生成四个peer,一个网关gw。 后续操作会使用127.0.0.1:8800 127.0.0.1:8810 127.0.0.1:8820 127.0.0.1:8830这四个地址执行初始化账本,
使用127.0.0.1:7080 127.0.0.1:7081 127.0.0.1:7082 127.0.0.1:7082作为peer节点的管理服务,
使用127.0.0.1:10080 127.0.0.1:10081 127.0.0.1:10082 127.0.0.1:10083 127.0.0.1:10084 127.0.0.1:10085 127.0.0.1:10086 127.0.0.1:10087作为peer节点的共识服务,使用8080端口作为网关服务。
后续操作请确保上诉地址端口未被占用。
我们进入 /home/imuge/jd/nodes/目录下观察一下

可以看到四个peer 和一个 网关
四、初始化
分别进入四个peer*/bin目录下,修改脚本可执行权限,依次执行
ledger-init.sh

执行初始化脚本的时候报错了

结果从早上找问题到晚上,检查过防火墙 telnet 包括重启xinetd然后并没有什么卵用,我尝试过更换centos7的镜像,结果还是一样的问题。最终我发现了怎么解决了
注意 注意 注意了!
这个时候需要你开4个终端连接,分别到peer0 peer1 peer2 peer3的bin目录下面执行初始化脚本,在执行的过程中都是这样的错误,当你把全部都执行的时候,初始化成功了


另外两个我就不截图出来了,调了一天,调到怀疑人生去,结果就是这么一个小细节,在官网上面可能没有讲到很清楚,容易让人误解。
四、启动
初始化成功后,依次进入peer*/bin目录下,执行




我们也可以进来看看每个peer的启动日志,我这里拿一个来举例

我们再进入到网关gw/bin的目录下执行
startup.sh
首先进入gw的目录下,对bin下面的.sh文件赋予执行权限
chmod +x *.sh


可以看一下网关的日志输出

打开浏览器 ip:8080访问,我这里是这个地址http://192.168.38.129:8080/login

账号:jdchain
密码:jdchain

浙公网安备 33010602011771号