Apa itu geth di docker

青灯夜游
Lepaskan: 2022-02-21 16:41:37
asal
2773 orang telah melayarinya

Dalam docker, Geth merujuk kepada perisian pelanggan rasmi yang disediakan oleh Ethereum Foundation, yang ditulis dalam bahasa pengaturcaraan Go, klien Geth menyediakan konsol arahan interaktif, yang mengandungi Pelbagai fungsi Ethereum.

Apa itu geth di docker

Persekitaran pengendalian tutorial ini: sistem linux5.9.8, versi docker-1.13.1, komputer Dell G3.

Apakah itu geth

Geth ialah perisian pelanggan rasmi yang disediakan oleh Yayasan Ethereum dan ditulis dalam bahasa pengaturcaraan Go. Geth menyediakan konsol arahan interaktif yang mengandungi pelbagai fungsi (API) Ethereum. Nama penuh ialah go-ethereum.

docker menggunakan klien geth

Pasang docker

Self-Baidu

Kedua, tarik ke bawah imej di atas cuma tarik yang terbaru

docker pull ethereum/client-go
Salin selepas log masuk

Ketiga, mari kita bincangkan tentang parameter docker run

Kerana jika imej rasmi dimulakan secara langsung, ia akan secara lalai untuk geth dan terus disegerakkan dengan rangkaian utama Kami pasti tidak mahu ia disegerakkan secara langsung bermaksud untuk melekapkan fail tempatan

docker run -d -it --name=node0  -u root -p 8545:8545 -p 30303:30303 -v E:\eth:/root --privileged=true --entrypoint /root/a.sh ethereum/client-go
Salin selepas log masuk
--kebenaran sudo sebenar istimewa

--skrip entri entrypoint, jika wujud, ia akan menimpa kenyataan dalam fail docker

Saya pilih untuk memulakan rantaian peribadi dalam skrip ini, bagaimana untuk memulakannya Anda boleh membaca tutorial rasmi dan artikel saya sebelum ini

Skrip saya

Keempat memulakan rantaian peribadi
#!/bin/sh
#初始化创世区块
geth -datadir  /root/data init /root/gener.json

if [  $# -lt 1 ]; then 
  exec "/bin/sh"
else
  exec /bin/sh -c "$@"
fi
Salin selepas log masuk

Ada masalah yang perlu diperhatikan di sini, iaitu Parameter permulaan telah dikemas kini semula

Dulu --rpc --rpcapi, tetapi kini ia ditukar kepada --http balabala

Pilihan API JSON-RPC berasaskan HTTP:

Dayakan pelayan HTTP-RPC
  • --http mendengar pelayan HTTP-RPC antara muka (lalai:
  • )
  • --http.addrlocalhost Port mendengar pelayan HTTP-RPC (lalai:
  • )
  • --http.port8545 API ditawarkan melalui antara muka HTTP-RPC (lalai:
  • )
  • --http.apieth,net,web3 Senarai domain yang dipisahkan koma untuk menerima permintaan asal silang (pelayar dikuatkuasakan)
  • --http.corsdomain Dayakan pelayan WS-RPC
  • --ws Antara muka mendengar pelayan WS-RPC (lalai:
  • )
  • --ws.addrlocalhost Port mendengar pelayan WS-RPC (lalai:
  • )
  • --ws.port8546 API ditawarkan lebih antara muka WS-RPC (lalai:
  • )
  • --ws.apieth,net,web3 Asal untuk menerima permintaan soket web
  • --ws.origins Lumpuhkan pelayan IPC-RPC
  • --ipcdisable API ditawarkan melalui antara muka IPC-RPC (lalai:
  • )
  • --ipcapiadmin,debug,eth,miner,net,personal,shh,txpool,web3 Nama fail untuk soket/paip IPC dalam datadir (laluan eksplisit melarikan diri daripadanya)
  • --ipcpath
  • Jadi sekarang arahan permulaan menjadi

Perkara yang perlu dilakukan seterusnya

geth --networkid 666 --http --http.addr=0.0.0.0 --http.port=8545 --http.api "web3,eth,debug,personal,net" --http.corsdomain "*" --allow-insecure-unlock --datadir /root/data  console 2>>geth.log
Salin selepas log masuk
Uji menggunakan sambungan web3

Kajian yang disyorkan: "

video buruh pelabuhan tutorial
var Web3 = require('web3');
var Tx = require('ethereumjs-tx').Transaction;
if (typeof web3 !== 'undefined') {
    web3 = new Web3(web3.currentProvider);
    console.log("1"+web3.version)
  } else {
    // set the provider you want from Web3.providers
    web3 = new Web3(new Web3.providers.HttpProvider('http://127.0.0.1:8545'));
    console.log(web3.version)
  }
Salin selepas log masuk
"

Atas ialah kandungan terperinci Apa itu geth di docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan