問題分析
在使用以太坊用戶端建立網絡元件的時候,出現以下錯誤:
Step 1/2: FROM puppeth/ethstats: latest bervice ’ ethstats’ failed to build: Get https://registry-1. docker. io/v2/: EOF ERROR[03-19|13:57:17.082] Failed to deploy ethstats container err=“Process exited with status 1”

此時已經給docker換過源了,是以報錯不是連接配接逾時問題,而是無法獲得更多資源,第一種可能和docker版本或者go的版本有關,我測試了三個go的版本,發現go版本1.11.2是可行的。而第二種可能是最常見的,那就是docker代理的問題,是以可以切換一個穩定的docker代理即可。
問題解決
第一步,更換go版本
首先進入/usr/local目錄
cd /usr/local
安裝go1.11.2版本
wget https://dl.google.com/go/go1.11.2.linux-amd64.tar.gz
解壓
tar zxvf go1.11.2.linux-amd64.tar.gz
設定編譯目錄GOPATH
mkdir -p /home/gopath
配置環境變量
vim /etc/profile
在配置檔案最後添加
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
export GOPATH=/home/gopath
儲存已配置的環境變量使其生效
source /etc/profile
最後隻需檢視go的版本即可驗證是否成功了
go version
第二步清除go-ethereum以編譯的可執行檔案後重新編譯,或者重新編譯一個未編譯的go-ethereum,可執行檔案在build的bin目錄下。
cd go-ethereum
make all
最後一步就可以執行puppeth去測試,此時上述的錯誤也就解決了,但是注意的是你的docker能通路外部網絡,如果不能可以換源。
docker換源
第二種解決辦法就是用個VPN,使本身機器能通路外網,可以解決了這個問題,是以,要給docker選擇一個穩定可行的代理,或者直接使用阿裡雲主機,無需VPN即可使用。