# 融资1亿的5irechain节点操作教程

By [susu](https://paragraph.com/@susu-3) · 2023-03-06

---

**5ire测试流程**

**官网地址**：[https://docs.5ire.org/](https://docs.5ire.org/)

**运行要求：**

核心：4

线程数：8

**内存**：8GB

**存储**：100GB SSD（250+GB 用于存档）

**软件**：

Linux 版本：18.04 LTS 或以上

Yarn：1.22.19或以上版本

Docker：版本20.10.10或以上

  

**协议** 如果启用了系统防火墙，则节点主机必须使以下端口 (TCP) 可访问：

· 9944: For web sockets

· 9933: For RPC call

**Best Practices**:

· Allow only minimum ports

o 30333: For Blockchain discovery

o 9944: For web sockets

o 9933: For RPC

o 22: For SSH (should be limited to certain address range or removed altogether after initial setup)

· Mount extra volume for blockchain storage

· Assign Static Public IP to instance/VM

· Monitoring Alarm on blockchain process and extra volume

  
  

**可以在metamask里添加EVM链**

要在 EVM 链上进行交易，用户需要 5ire 币来支付交易手续费。[按照此处](https://docs.5ire.org/docs/Wallets/5ire_Wallet_Extension)给出的说明创建一个 5ire 非托管钱包。

网络名称：5ireChain 新 RPC URL：[https://rpc-testnet.5ire.network](https://rpc-testnet.5ire.network) 链号：997 货币符号：5ire Explorer URL：[https://explorer.5ire.network](https://explorer.5ire.network)

  
  

**也可以选择下载5ire钱包**

**下载地址：** [**https://explorer.5ire.network/**](https://explorer.5ire.network/)

![](https://storage.googleapis.com/papyrus_images/ead2e158a8e4da260d1a4e0a78c941eb596bb8ffce92f6eb4031ee3dce371681.png)

 打开谷歌浏览器并前往“chrome://extensions”。使用右上角的切换开关打开**开发者模式。**

  

点击**Load unpacked**并从刚刚解压缩的 .zip 文件中选择 chrome 文件夹。

![](https://storage.googleapis.com/papyrus_images/392ad39dc4489c2c5e1a9b06e29a21233981c0e61f651e797d1cb8ab4c7bf32a.png)

**使用 5ire 钱包扩展**

**第 1 步：创建钱包**

安装扩展程序后，单击打开。

**第 2 步：单击创建新钱包**按钮开始使用 5ire 钱包扩展创建 5ire 钱包。为您的钱包命名，然后单击“创建”。

创建好之后会有个5ireChain Native 和 EVM 链地址 把这俩地址和私钥助记词什么的记好就行

**水龙头：** [**https://explorer.5ire.network/**](https://explorer.5ire.network/) 

![](https://storage.googleapis.com/papyrus_images/cca655703a8dec6ffbc866828fd3212f28d930455648fea48b03c6106814f683.png)

使用水龙头请求 5ire 硬币：

**第一步**：输入账户的钱包地址。

**第 2 步**：输入 5ire Coins 的数量。（目前限制为每个地址 100 个）

**第 3 步**：单击\*\*“发送”\*\*按钮。

  

运行
--

按照下面提到的步骤使用 Docker 运行完整节点或验证器节点：

**第 1 步**：使用以下命令下载 Docker 映像：

docker pull 5irechain/5ire-thunder-node:0.12

**第 2 步**：运行 Docker 映像

对于完整节点，运行以下命令：

docker run -p 30333:30333 -p 9933:9933 -p 9944:9944 5irechain/5ire-thunder-node:0.12 --port 30333 --chain /5ire/thunder-chain-spec.json  --ws-external --ws-port 9944 --rpc-external --rpc-port 9933 --rpc-cors all --no-telemetry --name my-5ire-full-node --bootnodes /ip4/3.128.99.18/tcp/30333/p2p/12D3KooWSTawLxMkCoRMyzALFegVwp7YsNVJqh8D2p7pVJDqQLhm --pruning archive

  

对于验证者节点，运行以下命令：

docker run -p 30333:30333 5irechain/5ire-thunder-node:0.12 --port 30333 --no-telemetry --name my-5ire-validator  --chain /5ire/thunder-chain-spec.json  --bootnodes /ip4/3.128.99.18/tcp/30333/p2p/12D3KooWSTawLxMkCoRMyzALFegVwp7YsNVJqh8D2p7pVJDqQLhm --pruning archive --validator

  
  

**部署智能合约**

原生链—WASM

1连接到 5ireChain 网络

2有编译好的 WASM 智能合约。这将使您了解 5ire Native 链上智能合约的所有相关技术细节。

3为了部署已编译的 WASM 智能合约，用户应该有权访问合约 ABI 及其 WASM 文件，或者用户也可以只有一个已经包含 ABI 和 WASM 的.contract（例如 – ERC721.contract）文件。

4克隆这个 repo ( [https://github.com/5ire-tech/wasm-contract-deployment](https://github.com/5ire-tech/wasm-contract-deployment) )

5将目录更改为这个 repo 并在 VScode run 'npm i' 中打开它

**注意：此步骤仅与想要部署自定义合约的人相关。**

6然后用户可以将“.contract”文件的所有内容粘贴到 abi.js 中。他们还可以使用 VScode 扩展格式化内容（右键单击>格式化文档>更漂亮）

7在 deploy.js 中更改 wsProvider 中的输入参数（提供要连接的链的端点）

**5ireChain 测试网的端点**\- Thunder：wss://wss-testnet.5ire.network/

8更改deploy.js中的phrase变量（输入某个账户的助记词，可以获取一些gas费用）

9运行“node deploy.js”

10在区块链上成功部署合约后，终端将为您提供完整的合约地址。

  

5FIRE—EVM链

Remix IDE
---------

可以使用 Remix IDE 通过以下步骤在 5ire EVM 链上部署智能合约：

\*\*第 1 步：\*\*要启动交易，请访问[https://remix.ethereum.org/#optimize=false&runs=200&evmVersion=null&version=soljson-v0.8.17+commit.8df45f5f.js](https://remix.ethereum.org/#optimize=false&runs=200&evmVersion=null&version=soljson-v0.8.17+commit.8df45f5f.js)

**第 2 步：在工作区下，单击创建新文件**。这将帮助您创建一个新文档，您可以在该文档上开始在 5ire EVM 链上部署智能合约。

**第 3 步：根据合同创建一个名为5ire.sol的新文件**。这将帮助您创建一个新程序，您可以通过该程序在 5ire 上部署智能合约。

**第 4 步：将下面给出的代码复制并粘贴到5ire.sol**文件中。

 ERC-20 代币的示例代码：

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.13;

  

// [https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v3.0.0/contracts/token/ERC20/IERC20.sol](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v3.0.0/contracts/token/ERC20/IERC20.sol)

interface IERC20 {

   function totalSupply() external view returns (uint);

  

   function balanceOf(address account) external view returns (uint);

  

   function transfer(address recipient, uint amount) external returns (bool);

  

   function allowance(address owner, address spender) external view returns (uint);

  

   function approve(address spender, uint amount) external returns (bool);

  

   function transferFrom(

       address sender,

       address recipient,

       uint amount

   ) external returns (bool);

  

   event Transfer(address indexed from, address indexed to, uint value);

   event Approval(address indexed owner, address indexed spender, uint value);

}

  
  
  

contract ERC20 is IERC20 {

   uint public totalSupply;

   mapping(address => uint) public balanceOf;

   mapping(address => mapping(address => uint)) public allowance;

   string public name = "Solidity by Example";

   string public symbol = "SOLBYEX";

   uint8 public decimals = 18;

  

   function transfer(address recipient, uint amount) external returns (bool) {

       balanceOf\[msg.sender\] -= amount;

       balanceOf\[recipient\] += amount;

       emit Transfer(msg.sender, recipient, amount);

       return true;

   }

  

   function approve(address spender, uint amount) external returns (bool) {

       allowance\[msg.sender\]\[spender\] = amount;

       emit Approval(msg.sender, spender, amount);

       return true;

   }

  

   function transferFrom(

       address sender,

       address recipient,

       uint amount

   ) external returns (bool) {

       allowance\[sender\]\[msg.sender\] -= amount;

       balanceOf\[sender\] -= amount;

       balanceOf\[recipient\] += amount;

       emit Transfer(sender, recipient, amount);

       return true;

   }

  

   function mint(uint amount) external {

       balanceOf\[msg.sender\] += amount;

       totalSupply += amount;

       emit Transfer(address(0), msg.sender, amount);

   }

  

   function burn(uint amount) external {

       balanceOf\[msg.sender\] -= amount;

       totalSupply -= amount;

       emit Transfer(msg.sender, address(0), amount);

   }

}

这是插入上述代码后屏幕的显示方式：

  

![](https://storage.googleapis.com/papyrus_images/a4a97214f5f03e5d43ebb761d51195268873aff2e8cb76e1c32808b13db46141.png)

**第 5 步：单击 Solidity Compiler，然后单击编译5ire.sol**。

**第 6 步：单击Deploy & Run Transactions**以执行您想要的交易。

**第七步：部署合约5ire.sol**。选择 Injected Web3 部署到实时网络。在这种情况下，我们选择 MetaMask 作为注入提供者。

  

\*\*第八步：\*\*核实资料后确认交易。您必须输入钱包地址以及将转入收款账户的金额。

  

\*\*第九步：\*\*在MetaMask中确认gas fee，在5ire EVM链上部署交易（gas fee是一笔小额交易费用，用于完成一笔交易）。

\*\*第十步：\*\*在Remix中找到已部署的合约地址，通过集成函数交互更新合约。

  
  

**具体的使用方法在**

[https://docs.5ire.org/docs/DeploySmartContracts/5ireEVMChain](https://docs.5ire.org/docs/DeploySmartContracts/5ireEVMChain)

一直往下拉 下面有个使用

---

*Originally published on [susu](https://paragraph.com/@susu-3/1-5irechain)*
