首页 > 科技周边 > IT业界 > 使用以太坊的私人网络经理Puppeth

使用以太坊的私人网络经理Puppeth

William Shakespeare
发布: 2025-02-16 12:59:42
原创
714 人浏览过

Using Puppeth, the Ethereum Private Network Manager

本文介绍Puppeth,一个用于管理和部署私有以太坊区块链的强大工具,它与Geth(最流行的以太坊节点之一)一起提供。您也可以独立安装Puppeth(前提是已安装Go):

go get github.com/ethereum/go-ethereum/cmd/puppeth
登录后复制

关键要点:

  • Puppeth是Geth的实用工具,简化了私有以太坊网络的管理和部署,也可独立使用。
  • Puppeth设置需要两台远程机器(虚拟机或服务器)来有效运行独立的以太坊节点。
  • Puppeth利用Docker容器运行辅助应用程序和以太坊节点,需要在主机上安装和配置Docker。
  • Puppeth的主要功能包括:创建创世区块,部署Ethstats和引导节点等网络组件,以及通过用户友好的命令行界面管理网络验证器。
  • Puppeth非常适合希望通过设置私有网络来试验区块链技术的开发人员,方便部署智能合约和去中心化应用程序(dApp)。

启动过程:

本教程将使用两台虚拟机。由于Puppeth的限制,无法在同一台机器上部署密封节点。

如果您不熟悉Vagrant,建议您阅读相关入门指南。

mkdir my_project; cd my_project
git clone https://github.com/swader/homestead_improved hi_puppeth1
git clone https://github.com/swader/homestead_improved hi_puppeth2
登录后复制

修改hi_puppeth2文件夹中的IP地址为192.168.10.11(而不是192.168.10.10)。

修改每个克隆的Homestead.yaml文件,打开以下端口:

ports:
    - send: 8545
      to: 8545
    - send: 30301
      to: 30301
    - send: 30302
      to: 30302
    - send: 30303
      to: 30303
    - send: 30304
      to: 30304
    - send: 30305
      to: 30305
    - send: 30306
      to: 30306
登录后复制

在主机/etc/hosts文件中添加虚拟主机:

<code>192.168.10.10 homestead.test
192.168.10.11 puppethnode.test</code>
登录后复制

(如果您的VM地址不同,请更改IP地址。)

运行vagrant up,然后使用vagrant ssh进入每个虚拟机。请在两个单独的终端中运行,以便同时保持两台机器运行。

先决条件:

每台机器上安装以下软件:

Puppeth在Docker容器中运行辅助应用程序和以太坊节点,因此需要安装Docker。安装Geth也很有用。

sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common \
    ethereum \
    docker.io \
    docker-compose
登录后复制

允许当前用户操作Docker命令:

sudo usermod -a -G docker $USER
登录后复制

在主机(VM外部)的myproject文件夹中创建新的以太坊账户:

mkdir node1 node2
geth --datadir node1 account new
geth --datadir node2 account new
登录后复制

记录生成的地址。至少需要两个签名者才能运行授权证明区块链。

Puppeth使用指南:

虚拟机运行且账户初始化后,开始使用Puppeth。在主机的新终端中运行Puppeth。

首先,输入网络名称(例如“puptest”)。

连接到远程服务器:选择选项3,输入服务器地址(例如vagrant@192.168.10.10),并提供SSH密钥密码或密码。重复此过程以连接第二个VM。

配置新的创世区块:选择选项2,选择共识引擎(建议使用PoA),设置块时间,指定允许密封的账户和预先资助的账户。

部署网络组件:

  • Ethstats: 选择选项1,指定端口和域名,设置API密钥。
  • Bootnode: 选择选项2,指定数据存储位置、端口和节点名称。
  • Sealnode: 选择选项3,指定数据存储位置、端口、节点名称,粘贴签名者的密钥JSON和解锁密码,设置gas limit和gas price。重复此过程以在第二个VM上部署Sealnode,使用不同的密钥和节点名称。
  • Wallet: 部署MyEtherWallet,指定端口、数据存储位置、节点端口和名称。
  • Faucet: 部署Faucet,指定端口、数据存储位置、节点端口、名称,粘贴Faucet的资助账户密钥JSON和解锁密码,并设置相关参数。

部署完成后,访问Ethstats页面(例如homestead.test:8081)查看节点状态。

结论:

现在您可以轻松地开发和部署智能合约。Puppeth是一个一站式区块链服务管理工具,简化了区块链开发流程。Docker容器配置为自动启动,因此重新启动VM无需重新配置。

Using Puppeth, the Ethereum Private Network Manager Using Puppeth, the Ethereum Private Network Manager Using Puppeth, the Ethereum Private Network Manager Using Puppeth, the Ethereum Private Network Manager Using Puppeth, the Ethereum Private Network Manager Using Puppeth, the Ethereum Private Network Manager Using Puppeth, the Ethereum Private Network Manager

(由于无法访问图片链接,我使用了占位符“图片1”到“图片8”。请替换为实际图片链接。)

以上是使用以太坊的私人网络经理Puppeth的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板