Skip to content

Puppeth: new ethereum/client-go breaks deploying nodes #16464

@corpetty

Description

@corpetty

System information

Geth version: geth version 1.8.4-unstable
OS & Version: Ubuntu 17.10

Expected behaviour

deploying a node using puppeth should pull relevant docker images from dockerhub and deploy the geth node on the server with network information

Actual behaviour

If you need to pull the newest ethereum/go-client on the server (> v1.8.3), you get a permissions issue as follows:

What would you like to do? (default = stats)
 1. Show network stats
 2. Manage existing genesis
 3. Manage tracked machines
 4. Manage network components
> 4

 1. Tear down Nginx on [email protected]
 2. Tear down Ethstats on [email protected]
 3. Deploy new network component
> 3

What would you like to deploy? (recommended order)
 1. Ethstats  - Network monitoring tool
 2. Bootnode  - Entry point of the network
 3. Sealer    - Full node minting new blocks
 4. Explorer  - Chain analysis webservice (ethash only)
 5. Wallet    - Browser wallet for quick sends
 6. Faucet    - Crypto faucet to give away funds
 7. Dashboard - Website listing above web-services
> 2

Which server do you want to interact with?
 1. xxxxxxxxxx
 2. Connect another server
> 1

Where should data be stored on the remote machine?
> /home/petty/bootnode_test

Which TCP/UDP port to listen on? (default = 30303)
>

How many peers to allow connecting? (default = 512)
>

How many light peers to allow connecting? (default = 256)
>

What should the node be called on the stats page?
> test_bootnode
Found orphan containers (ls_ethstats_1, ls_nginx_1) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up.
Building bootnode
Step 1/4 : FROM ethereum/client-go:latest
latest: Pulling from ethereum/client-go
Digest: sha256:10e26ce2f36e9981935bde8f6e101b6e7367bdd1479677242391f6a0d478a809
Status: Downloaded newer image for ethereum/client-go:latest
 ---> 8b32c2d2aba8
Step 2/4 : ADD genesis.json /genesis.json
  1 // Copyright 2017 The go-ethereum Authors
 ---> d64b6e2df69e
Step 3/4 : RUN   echo 'geth --cache 512 init /genesis.json' > geth.sh &&     echo $'geth --networkid 65170 --cache 512 --port 30303 --maxpeers 512 --lightpeers=256 --lightserv=50 --ethstats \'test_bootnode:[email protected]\'    --targetgaslimit 0 --gasprice 0' >> geth.sh
 ---> Running in e012420b44e8
/bin/sh: can't create geth.sh: Permission denied
Service 'bootnode' failed to build: The command '/bin/sh -c echo 'geth --cache 512 init /genesis.json' > geth.sh &&     echo $'geth --networkid 65170 --cache 512 --port 30303 --maxpeers 512 --lightpeers=256 --lightserv=50 --ethstats \'test_bootnode:[email protected]\'    --targetgaslimit 0 --gasprice 0' >> geth.sh' returned a non-zero code: 1
ERROR[04-08|16:09:12] Failed to deploy Ethereum node container err="Process exited with status 1"

I can submit pull request for changing ethereum/go-client:latest to v1.8.3 or the dockerhub version needs to be fixed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions