In Docker bezieht sich Geth auf die offizielle Client-Software der Ethereum Foundation, die in der Programmiersprache Go geschrieben ist. Der Geth-Client bietet eine interaktive Befehlskonsole, die verschiedene Funktionen der Ethereum-Funktion enthält.
Die Betriebsumgebung dieses Tutorials: Linux5.9.8-System, Docker-1.13.1-Version, Dell G3-Computer.
Was ist Geth?
Geth ist die offizielle Client-Software der Ethereum Foundation und ist in der Programmiersprache Go geschrieben. Geth stellt eine interaktive Befehlskonsole bereit, die verschiedene Funktionen (APIs) von Ethereum enthält. Der vollständige Name ist go-ethereum. „Docker stellt den Geth-Client bereit.“ Sprechen Sie über Docker Run erste Parameter
Denn wenn das offizielle Image direkt gestartet wird, wird es standardmäßig geth und direkt mit dem Hauptnetzwerk synchronisiert. Der Befehl lautet wie folgt: docker pull ethereum/client-go
-Entrypoint-Eingabeskript, falls vorhanden, überschreibt es die Anweisung in der Docker-Datei
Ich habe mich entschieden, die private Kette in diesem Skript zu initialisieren zu sehen im offiziellen Tutorial und in meinem vorherigen ArtikelMein Skriptdocker 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
Ein hier zu beachtendes Problem ist, dass die Startup-Parameter erneut aktualisiert wurden
Früher hieß es --rpc -- rpcapi, aber jetzt wird es in --http balabala geändert .addr HTTP-RPC-Server-Abhörschnittstelle (Standard:localhost
)
--http.port
HTTP-RPC-Server-Abhörport (Standard: 8545
)
--http.api APIs, die über die HTTP-RPC-Schnittstelle angeboten werden (Standard: <code>eth,net,web3
)
- -http.corsdomain
Durch Kommas getrennte Liste der Domänen, von denen Cross-Origin-Anfragen angenommen werden sollen (Browser erzwungen)
--ws
Aktivieren Sie den WS-RPC-Server
--ws .addr
WS-RPC-Server-Abhörschnittstelle (Standard: localhost
)
--ws.port
WS-RPC-Server-Abhörport (Standard: 8546
)--ws.api APIs, die über die WS-RPC-Schnittstelle angeboten werden (Standard: <code>eth,net,web3
)
- -ws.origins
Ursprünge, von denen Websockets-Anfragen akzeptiert werden --ipcdisable
Deaktivieren Sie den IPC-RPC-Server
--ipcapi
APIs, die über den IPC angeboten werden -RPC-Schnittstelle (Standard: admin,debug,eth,miner, net,personal,shh,txpool,web3
)
--ipcpath
Dateiname für IPC-Socket/-Pipe darin das Datenverzeichnis (explizite Pfade maskieren es)Als nächstes müssen Sie tun, was Sie wollen.
--http
Enable the HTTP-RPC server--http.addr
HTTP-RPC server listening interface (default:localhost
)--http.port
HTTP-RPC server listening port (default:8545
)--http.api
API's offered over the HTTP-RPC interface (default:eth,net,web3
)--http.corsdomain
Comma separated list of domains from which to accept cross origin requests (browser enforced)--ws
Enable the WS-RPC server--ws.addr
WS-RPC server listening interface (default:localhost
)--ws.port
WS-RPC server listening port (default:8546
)--ws.api
API's offered over the WS-RPC interface (default:eth,net,web3
)--ws.origins
Origins from which to accept websockets requests--ipcdisable
Disable the IPC-RPC server--ipcapi
API's offered over the IPC-RPC interface (default:admin,debug,eth,miner,net,personal,shh,txpool,web3
)--ipcpath
So, jetzt der Startbefehl. Das war's#!/bin/sh #初始化创世区块 geth -datadir /root/data init /root/gener.json if [ $# -lt 1 ]; then exec "/bin/sh" else exec /bin/sh -c "$@" fiNach dem Login kopieren
Testen Sie es mit einer Web3-Verbindung.
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
Empfohlenes Lernen: „
Docker-Video Tutorial"
Das obige ist der detaillierte Inhalt vonWas ist Geth in Docker?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!