首頁 > 科技週邊 > IT業界 > 使用以太坊的私人網絡經理Puppeth

使用以太坊的私人網絡經理Puppeth

William Shakespeare
發布: 2025-02-16 12:59:42
原創
719 人瀏覽過

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
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板