blockchain:goerliテストネットの使用
文書の過去の版を表示しています。
目次
Goerli テストネットの使用
MetaMask の設定
以下の手順で MetaMask が接続するネットワークを Goerli に設定します。
Hardhat の設定
alchemy への登録と API KEY の取得
Faucet から ETH を貰う
以下の手順で「GOERLI FAUCET」から Goerli で使用できる 0.05 ETH を貰うことができます。 (Faucetは「蛇口」という意味。)
- ブラウザで GOERLI FAUCET にアクセス
- 「Please signup or login」をクリック
- アドレスに自分のアカウントを入力
- 「Send Me ETH」ボタンをクリック
MetaMask アカウントプライベートキーの取得
Hardhat 設定ファイルの編集
Hardhat の設定ファイルが接続する ethereum ブロックチェーンを Goerli に切り替える方法です。
hardhat.config.js の networks プロパティに Goerli を追記します。 追記しているのは「ALCHEMY_API_KEY」「GOERLI_PRIVATE_KEY」と modules.exports の「networks:」です。 環境に合わせてマージしてください。
require("@nomiclabs/hardhat-waffle"); // This is a sample Hardhat task. To learn how to create your own go to // https://hardhat.org/guides/create-task.html task("accounts", "Prints the list of accounts", async (taskArgs, hre) => { const accounts = await hre.ethers.getSigners(); for (const account of accounts) { console.log(account.address); } }); // You need to export an object to set up your config // Go to https://hardhat.org/config/ to learn more // Go to https://www.alchemyapi.io, sign up, create // a new App in its dashboard, and replace "KEY" with its key const ALCHEMY_API_KEY = "YOUR_ALCHEMY_API_KEY"; // Replace this private key with your Goerli account private key // To export your private key from Metamask, open Metamask and // go to Account Details > Export Private Key // Be aware of NEVER putting real Ether into testing accounts const GOERLI_PRIVATE_KEY = "YOUR_GOERLI_PRIVATE_KEY"; /** * @type import('hardhat/config').HardhatUserConfig */ module.exports = { solidity: "0.8.4", networks: { hardhat: {}, goerli: { url: `https://eth-goerli.alchemyapi.io/v2/${ALCHEMY_API_KEY}`, accounts: [`${GOERLI_PRIVATE_KEY}`] } } };
Goerli にスマートコントラクトをデプロイする
Goerli にスマートコントラクトをデプロイして実行するコマンドの例です。
「–network goerli」オプションを付けることで Goerli ネットワークを選択しているのがポイントです。
Goerli に Greeter スマートコントラクトをデプロイ
hardhat_project> npx hardhat run .\scripts\sample-script.js --network goerli Downloading compiler 0.8.4 Compiled 2 Solidity files successfully Greeter deployed to: 0xaCeAe7f921287fA5B255d37e83a1859793052D8B
Goerli にコンソール接続し Greeter スマートコントラクトを実行
hardhat_project> npx hardhat console --network goerli Welcome to Node.js v16.15.0. Type ".help" for more information. > const Greeter = await ethers.getContractAt('Greeter', '0xaCeAe7f921287fA5B255d37e83a1859793052D8B'); undefined > await Greeter.greet(); 'Hello, Hardhat!'
今回デプロイした Greeter スマートコントラクトはインターネット上で稼働する Goerli にデプロイされているため、どこからでもアクセスすることができます。Etherscan(0xaCeAe7f921287fA5B255d37e83a1859793052D8B) で上記のスマートコントラクトアドレスをスキャンすると、Greeter スマートコントラクトのソースコードや ABI が確認できます。
blockchain/goerliテストネットの使用.1653917843.txt.gz · 最終更新: 2022/05/30 13:37 by dot