使用Docker运行节点
用户能够借助Docker便捷地搭建Conflux节点的运行环境。 以下我们假定docker的环境配置已经完成。
获取镜像
可以从docker hub中获取Conflux的镜像。但需要注意tag的选取。我们以2.0.2版本为例进行说明。不同tag可大致分为三个系列,如:
-
conflux-rust:2.0.2-mainnet
。mainnet 后缀代表为 Conflux 主网镜像。以默认配置运行该镜像会运行起一个主网节点。 -
conflux-rust:2.0.2-fix-testnet
。testnet 后缀代表为 Conflux 测试网镜像。以默认配置运行该镜像会运行起一个测试网节点。 -
conflux-rust:2.0.2
。无后缀的代表为用于本地开发的镜像。以默认配置运行该镜像会运行起一个本地的节点。使用latest
tag 会默认拉取此系列的最新版本镜像。
// 我们推荐先使用无后缀的版本用于测试,之后有需要也可以使用其他版本
docker pull confluxchain/conflux-rust:2.0.2
运行镜像
使用默认配置启动
使用以下命令可以快速启动用于本地开发的镜像。
docker run -p 12537:12537 --rm --name cfx-node confluxchain/conflux-rust:2.0.2
启动后可以尝试是否能使用钱包连接到本地网络。如使用Fluent钱包,在设置页的“网络管理”页面中进行配置。在RPC URL填写完成后如果能自动获取区块链ID,则说明上述步骤运行成功。
此外也可以直接借助命令行查看是否有正常响应。
curl --data '{ "jsonrpc": "2.0", "method": "cfx_getStatus", "params": [], "id": 0 }' localhost:12537 -H 'content-type: application/json'
使用自定义配置启动
除了使用默认配置启动外,还能够使用指定的配置文件启动。我们以启动测试网为例进行说明。
首先我们需要获得启动测试网节点的示例配置文件。
git clone https://github.com/Conflux-Chain/conflux-docker.git
cd conflux-docker/fullnode-configs/hydra/testnet
cp testnet.toml conflux.toml
docker需要的配置文件名为conflux.toml
(与直接在宿主机中运行Conflux的需求不同)。我们使用上述项目的fullnode-configs/hydra/testnet/testnet.toml
文件作为配置文件的模版,获得conflux.toml
文件。接下来还需要对conflux.toml
进行若干修改。
- 取消
jsonrpc_http_port=12537
行的注释。 - 在配置文件最后增加一行
dev_pos_private_key_encryption_password = "your-pos-pwd"
。(设置保护pos_key
的口令)
接下来运行下述的命令
// 注意当前目录为conflux-docker/fullnode-configs/hydra/testnet
docker run -p 12537:12537 -v $PWD:/root/run --rm --name cfx-node confluxchain/conflux-rust:2.0.2-fix-testnet
curl --data '{ "jsonrpc": "2.0", "method": "cfx_getStatus", "params": [], "id": 0 }' localhost:12537 -H 'content-type: application/json'
如果有正常响应且chainId为1则说明测试网节点运行正常。
No Comments