- 本地网络
- Testnet 网络
- Mainnet 网络
要轻松设置本地节点,请下载并运行 通过运行以下命令启动节点:有关脚本执行内容的进一步说明以及对设置过程的更精细控制,请继续阅读下文。上述命令创建节点运行所需的所有配置文件以及定义网络初始状态的默认 genesis 文件。所有这些配置文件默认位于 修改
此时,需要修改 现在你已创建本地账户,继续在链的 genesis 文件中授予它一些 使用
两个配置文件会自动生成在 此命令允许你运行单个节点,这足以通过节点与链交互,但你可能希望同时运行多个节点以查看它们之间如何达成共识。
setup.sh 脚本。这将初始化你的本地 Injective 网络。初始化链
在运行 Injective 节点之前,我们需要初始化链以及节点的 genesis 文件:~/.injectived 中,但你可以通过传递 --home 标志来覆盖此文件夹的位置。请注意,如果你选择使用 ~/.injectived 以外的目录,则每次运行 injectived 命令时都必须使用 --home 标志指定位置。如果你已有 genesis 文件,可以使用 --overwrite 或 -o 标志覆盖它。~/.injectived 文件夹具有以下结构:修改 genesis.json 文件
此时,需要修改 genesis.json 文件:- 将 staking
bond_denom、crisisdenom、govdenom和 mintdenom的值更改为"inj",因为这是 Injective 的原生 token。
上述命令仅在使用默认
.injectived 目录时有效。对于特定目录,请修改上述命令或手动编辑 genesis.json 文件以反映更改。为 Validator 账户创建密钥
在启动链之前,你需要用至少一个账户填充状态。为此,首先在test keyring backend 下创建一个名为 my_validator 的新账户(可以选择其他名称和其他 backend):inj token。这样做还将确保你的链从创世开始就知道此账户的存在:$MY_VALIDATOR_ADDRESS 是保存 keyring 中 my_validator 密钥地址的变量。Injective 中的 token 具有 {amount}{denom} 格式:amount 是 18 位精度的十进制数,denom 是带有其面额键的唯一 token 标识符(例如 inj)。这里我们授予 inj token,因为 inj 是 injectived 中用于 staking 的 token 标识符。将 Validator 添加到链
现在你的账户有了一些 token,你需要向链添加一个 validator。Validator 是参与共识过程以向链添加新区块的特殊全节点。任何账户都可以声明其成为 validator 运营者的意图,但只有获得足够委托的账户才能进入活跃集。在本指南中,你将把本地节点(通过上面的init 命令创建)添加为链的 validator。可以在链首次启动之前通过包含在 genesis 文件中的特殊交易(称为 gentx)声明 validator:gentx 做三件事:- 将你创建的
validator账户注册为 validator 运营者账户(即控制 validator 的账户)。 - 自委托提供的 staking token
amount。 - 将运营者账户与用于签署区块的 Tendermint 节点公钥链接。如果未提供
--pubkey标志,则默认为通过上面的injectived init命令创建的本地节点公钥。
gentx 的更多信息,请使用以下命令:使用 app.toml 和 config.toml 配置节点
两个配置文件会自动生成在 ~/.injectived/config 中:config.toml:用于配置 Tendermint(在 Tendermint 文档中了解更多),以及app.toml:由 Cosmos SDK(Injective 基于此构建)生成,用于状态修剪策略、遥测、gRPC 和 REST 服务器配置、状态同步等配置。
app.toml 中的 minimum-gas-prices 字段,它定义了 validator 节点愿意接受的处理交易的最低 gas 价格。如果为空,请确保编辑该字段并设置某个值,例如 10inj,否则节点将在启动时停止。在本教程中,让我们将最低 gas 价格设置为 0: