您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# 如何搭建NEM Catapult Symbol测试节点
## 前言
NEM Catapult(现称Symbol)是NEM区块链平台的重大升级版本,引入了更强大的智能合约功能、跨链交易和优化的共识机制。搭建测试节点对于开发者理解Symbol架构、测试dApp或参与网络治理至关重要。本文将详细介绍从环境准备到节点同步的全过程。
---
## 一、环境准备
### 1.1 硬件要求
- **最低配置**:
- CPU:4核 (推荐Intel Xeon或AMD EPYC)
- 内存:8GB RAM
- 存储:100GB SSD (需考虑区块增长)
- 带宽:10Mbps+ 稳定连接
- **生产级建议**:
- 使用云服务器时选择高频CPU机型
- 启用NVMe SSD提升IOPS性能
### 1.2 操作系统
- **Ubuntu 20.04/22.04 LTS** (官方推荐)
- CentOS 7+/RHEL 8+
- 需确保已安装:
```bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential git curl docker-compose
# 基础工具链
sudo apt install -y \
ca-certificates \
gnupg \
lsb-release \
software-properties-common
# Docker安装(如未安装)
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io
git clone https://github.com/symbol/symbol-bootstrap.git
cd symbol-bootstrap
git checkout tags/v1.0.3 # 替换为最新版本
npm install -g symbol-bootstrap
symbol-bootstrap healthCheck # 验证安装
symbol-bootstrap config -p testnet -a dual --noPassword
参数说明:
- -p testnet
:选择测试网络
- -a dual
:同时运行API和Peer节点
- --noPassword
:禁用交互式密码输入(测试环境用)
编辑生成的preset.yml
:
nodes:
- name: "my-test-node"
host: "your.server.ip"
roles: "Peer,Api"
database:
url: "mongodb://localhost:27017"
name: "symbol_testnet"
symbol-bootstrap run -d # -d 后台运行
docker ps # 应看到以下容器:
# symbol-rest-gateway-0
# symbol-broker-0
# symbol-mongo-0
symbol-bootstrap logs --tail 100 # 查看最新100行日志
journalctl -u symbol-node -f # 系统级日志跟踪
curl http://localhost:3000/node/health
健康响应示例:
{
"status": {
"apiNode": "up",
"db": "up"
}
}
curl http://localhost:3000/chain/info | jq '.height'
symbol-bootstrap stop
rm -rf ./data
symbol-bootstrap start --upgrade
resources/config-node.properties
中的端口配置rest-gateway.properties
:
server.ssl.enabled=true
server.ssl.key-store=/path/to/keystore.p12
# preset.yml 追加
node:
cacheSize: "10GB"
maxOpenFiles: 100000
# 创建每日快照
symbol-bootstrap snapshot --output /backups/symbol-$(date +%F).zip
const { Account, NetworkType } = require('symbol-sdk');
const testAccount = Account.generateNewAccount(NetworkType.TEST_NET);
console.log(testAccount.privateKey);
const transaction = TransferTransaction.create(
Deadline.create(epochAdjustment),
Address.createFromRawAddress('TB6Q5E-YACWBP-CXKGIL-I6XWCH-DRFLTB-K32DFI-3W3V'),
[NetworkCurrencyMosaic.createRelative(10)],
PlainMessage.create('Test transaction'),
NetworkType.TEST_NET
);
symbol-bootstrap stop
npm update -g symbol-bootstrap
symbol-bootstrap start --upgrade
# 从备份恢复
symbol-bootstrap stop
unzip /backups/symbol-latest.zip -d ./data
symbol-bootstrap start
搭建Symbol测试节点是参与NEM生态系统的重要入口。通过本文的步骤,您已具备运行测试节点、进行交易验证和开发测试的能力。建议进一步探索: - Symbol官方文档 - 加入Symbol Discord开发者社区 - 实践跨链原子交换等高级功能
注意:测试网数据会定期重置,生产环境请使用主网配置。 “`
(实际字数:约2400字,可根据需要调整细节部分)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。