Ich konnte Verträge auf dem ethereumjs testrpc mit Trüffel ohne Probleme erfolgreich bereitstellen. Jetzt wollte ich dasselbe auf einem Remote-Knoten tun, auf dem Geth 1.6.1 ausgeführt wird, aber es gibt mir jedes Mal einen JSON-RPC-Fehler, wenn ich versuche, die Truffle-Migration auszuführen. Es gibt keine Probleme mit Ports und alle Ports sind offen. Ich habe versucht, ein neues Datenverzeichnis einzurichten, aber das gleiche Problem besteht weiterhin
Befehl zum Starten des Geth-Clients: -
geth --datadir /home/ubuntu/privatenet/test1 --networkid "1234" --rpcapi "admin,db,eth,debug,miner,net,shh,txpool,personal,web3,web3_extended" --rpc --port 30310 --rpcaddr "0.0.0.0" --rpcport 8110 --rpccorsdomain="*" --nat "any" --unlock '0,1' console 2>> /home/ubuntu/privatenet/test1/eth8.log
meine truffle.js-Datei ist wie folgt:-
module.exports = {
networks: {
development: {
host: 'localhost',
port: 8545,
network_id: '*' // Match any network id
},
geth: {
host: 'http://10.0.0.241',
port: 8110,
network_id: '1234', // Match network id
from: '0x7824b8756cfa5131ead88e190e8adb10546fefaf' // account 0
(default account which has been already unlocked)
}
}
};
verwendeter Befehl: trufflemigrate --network geth
Ergebnis:
Compiling .\contracts\ UtilityEVEC.sol...
Compiling .\contracts\TokenWallet.sol...
Compiling .\contracts\contractContainer.sol...
Writing artifacts to .\build\contracts
Using network 'geth'.
Running migration: 1_initial_migration.js
Error: Invalid JSON RPC response: ""
at Object.InvalidResponse (C:\Users\Administrator\AppData\Roaming\npm\node_modules\truffle\node_modu
les\web3\lib\web3\errors.js:35:16)
at XMLHttpRequest.request.onreadystatechange (C:\Users\Administrator\AppData\Roaming\npm\node_module
s\truffle\node_modules\web3\lib\web3\httpprovider.js:115:32)
at XMLHttpRequestEventTarget.dispatchEvent (C:\Users\Administrator\AppData\Roaming\npm\node_modules\
truffle\node_modules\xhr2\lib\xhr2.js:64:18)
at XMLHttpRequest._setReadyState (C:\Users\Administrator\AppData\Roaming\npm\node_modules\truffle\no
de_modules\xhr2\lib\xhr2.js:354:12)
at XMLHttpRequest._onHttpRequestError (C:\Users\Administrator\AppData\Roaming\npm\node_modules\truff
le\node_modules\xhr2\lib\xhr2.js:544:12)
at ClientRequest.<anonymous> (C:\Users\Administrator\AppData\Roaming\npm\node_modules\truffle\node_m
odules\xhr2\lib\xhr2.js:414:24)
at emitOne (events.js:96:13)
at ClientRequest.emit (events.js:188:7)
at Socket.socketErrorListener (_http_client.js:310:9)
at emitOne (events.js:96:13)
Ich hatte den gleichen Fehler, der auf eine falsche IP im Host-Parameter zurückzuführen war. Dieser Fehler wird anscheinend ausgelöst, wenn Truffle die Verbindung zum Netzwerkknoten nicht herstellen kann.
In Ihrer truffle.js-Konfiguration sollten Sie nur den Hostnamen festlegen, nicht das Protokoll. Dh:
Sie sollten "10.0.0.241" anstelle von " http://10.0.0.241 " haben.
Sanchit
Shourie Ganguly
Sanchit