Die Truffle-Migration funktioniert, wenn ich testrpc verwende, aber nicht geth.
Folgendes habe ich für testrpc gemacht: In einer Konsole
node-modules/.bin/testrpc
In einem anderen
truffle console
compile
migrate
ergebend
Using network 'development'.
Running migration: 2_deploy_contracts.js
Deploying GoodFund...
GoodFund: 0x18c9f7f2468714dab06264cf06446f66251ac930
Saving successful migration to network...
Saving artifacts...
Allerdings, wenn ich benutze
geth --testnet console
admin.startRPC("127.0.0.1", 8545, "*", "web3,db,net,eth")
personal.newAccount('blah')
personal.unlockAccount('account key', 'blah', 15000)
und in einer anderen Konsole
truffle migrate
ergebend
Running migration: 1_initial_migration.js
Deploying Migrations...
Error encountered, bailing. Network state unknown. Review successful transactions manually.
Error: authentication needed: password or unlock
Ich habe versucht, den truffle.js-Host von „localhost“ auf „127.0.0.1“ zu ändern, und habe denselben Fehler erhalten.
Das habe ich in 2_deploy_contracts.js
var GoodFund = artifacts.require("./GoodFund.sol");
module.exports = function(deployer) {
deployer.deploy(GoodFund, '0x6196bc7c252ac811ce06824cd5abbbe4b36db6dc', {gas:4000000});
};
Danke für eure Hilfe!
Sie müssen das Standardkonto im Falle von Geth entsperren, das Sie zum Zeitpunkt der Einrichtung des Knotens erstellt haben, wahrscheinlich mit dem folgenden Konto -
geth --datadir path_to_dir/ account new
Sie können das Standardkonto wie folgt entsperren -
personal.unlockAccount(eth.accounts[0], 'password', 0)
Wenn Sie sich nicht an das Standardkontopasswort erinnern, empfehle ich Ihnen, den Geth-Knoten erneut einzurichten, das Standardkonto zu entsperren und auszuführen truffle migrate
.
Sie können den in dieser Antwort genannten Schritten folgen , um ein privates Netzwerk einzurichten - Wie richte ich ein privates Ethereum-Netzwerk ein?