Home Technology peripherals It Industry Using Puppeth, the Ethereum Private Network Manager

Using Puppeth, the Ethereum Private Network Manager

Feb 16, 2025 pm 12:59 PM

Using Puppeth, the Ethereum Private Network Manager

This article introduces Puppeth, a powerful tool for managing and deploying private Ethereum blockchains, which is provided with Geth, one of the most popular Ethereum nodes. You can also install Puppeth independently (provided that Go is installed):

go get github.com/ethereum/go-ethereum/cmd/puppeth
Copy after login

Key points:

  • Puppeth is a practical tool for Geth, which simplifies the management and deployment of private Ethereum networks and can also be used independently.
  • Puppeth setup requires two remote machines (virtual machines or servers) to effectively run independent Ethereum nodes.
  • Puppeth uses Docker container to run auxiliary applications and Ethereum nodes, and needs to install and configure Docker on the host.
  • Puppeth's main features include: creating genesis blocks, deploying network components such as Ethstats and boot nodes, and managing network validators through a user-friendly command line interface.
  • Puppeth is ideal for developers who want to experiment with blockchain technology by setting up private networks, making it easy to deploy smart contracts and decentralized applications (dApps).

Startup process:

This tutorial will use two virtual machines. Due to Puppeth restrictions, it is impossible to deploy sealed nodes on the same machine.

If you are not familiar with Vagrant, we recommend that you read the relevant starting guide.

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
Copy after login

Modify the IP address in the hi_puppeth2 folder to 192.168.10.11 (rather than 192.168.10.10).

Modify the Homestead.yaml file of each clone and open the following port:

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
Copy after login

Add virtual host in host/etc/hosts file:

<code>192.168.10.10 homestead.test
192.168.10.11 puppethnode.test</code>
Copy after login

(If your VM address is different, please change the IP address.)

Runvagrant up and use vagrant ssh to enter each virtual machine. Please run in two separate terminals to keep both machines running at the same time.

Prerequisite:

Install the following software on

Each machine:

Puppeth runs auxiliary applications and Ethereum nodes in the Docker container, so Docker is required. Installing Geth is also useful.

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
Copy after login
Allow the current user to operate Docker commands:

sudo usermod -a -G docker $USER
Copy after login
Create a new Ethereum account in the

folder on the host (external to VM): myproject

mkdir node1 node2
geth --datadir node1 account new
geth --datadir node2 account new
Copy after login
Record the generated address. At least two signers are required to run the Proof of Authorization blockchain.

Puppeth Guide:

After the virtual machine is running and the account is initialized, start using Puppeth. Run Puppeth in the new terminal of the host.

First, enter the network name (for example, "puptest").

Connect to remote server: Select option 3, enter the server address (for example

), and provide the SSH key password or password. Repeat this process to connect to the second VM. vagrant@192.168.10.10

Configure the new Genesis Block: Select Option 2, select Consensus Engine (PoA is recommended), set block time, specify the account that allows sealing and pre-funded accounts.

Deploy network components:

  • Ethstats: Select option 1, specify the port and domain name, and set the API key.
  • Bootnode: Select Option 2 to specify the data storage location, port, and node name.
  • Sealnode: Select option 3, specify the data storage location, port, and node name, paste the signer's key JSON and unlock password, and set gas limit and gas price. Repeat this process to deploy Sealnode on the second VM, using a different key and node name.
  • Wallet: Deploy MyEtherWallet, specifying the port, data storage location, node port, and name.
  • Faucet: Deploy Faucet, specify the port, data storage location, node port, name, paste Faucet's funding account key JSON and unlock password, and set relevant parameters.

After the deployment is complete, visit the Ethstats page (for example homestead.test:8081) to view the node status.

Conclusion:

You can now easily develop and deploy smart contracts. Puppeth is a one-stop blockchain service management tool that simplifies the blockchain development process. The Docker container is configured to start automatically, so restarting the VM does not require reconfiguration.

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

(Because I cannot access the image link, I used the placeholders "Image 1" to "Image 8". Please replace it with the actual image link.)

The above is the detailed content of Using Puppeth, the Ethereum Private Network Manager. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1663
14
PHP Tutorial
1266
29
C# Tutorial
1239
24
CNCF Arm64 Pilot: Impact and Insights CNCF Arm64 Pilot: Impact and Insights Apr 15, 2025 am 08:27 AM

This pilot program, a collaboration between the CNCF (Cloud Native Computing Foundation), Ampere Computing, Equinix Metal, and Actuated, streamlines arm64 CI/CD for CNCF GitHub projects. The initiative addresses security concerns and performance lim

Serverless Image Processing Pipeline with AWS ECS and Lambda Serverless Image Processing Pipeline with AWS ECS and Lambda Apr 18, 2025 am 08:28 AM

This tutorial guides you through building a serverless image processing pipeline using AWS services. We'll create a Next.js frontend deployed on an ECS Fargate cluster, interacting with an API Gateway, Lambda functions, S3 buckets, and DynamoDB. Th

Top 21 Developer Newsletters to Subscribe To in 2025 Top 21 Developer Newsletters to Subscribe To in 2025 Apr 24, 2025 am 08:28 AM

Stay informed about the latest tech trends with these top developer newsletters! This curated list offers something for everyone, from AI enthusiasts to seasoned backend and frontend developers. Choose your favorites and save time searching for rel

See all articles