Ganacheで手軽にDappsを体験する
やること
今回はGanacheを利用して、昨日作成したスマートコントラクトをテストネットワーク上で動かしてみたいと思います。
Ganacheとは
一言で言うとONE CLICK BLOCKCHAINです(!?)
ローカル環境にEthereumのテストネットワークを手軽に立ち上げることができます。
ダウンロード
ヘッダー右下にある、DOWNLOADボタンをクリックし、ダウンロードを開始します。
開く
アプリケーションを開始すると、以下のような画面になります。 最初からテスト用に複数のアカウントと、それぞれ100ETHずつあることが確認できます。
ネットワークの確認
アプリケーション右上にある⚙ボタンをクリックし、設定画面を開きます。
設定画面内にサーバーの情報が書かれているのでメモします。
デプロイの準備
前回の記事で作成したトークンのディレクトリに移動します。
ディレクトリ内にあるtruffle.js
を以下のようにします。
module.exports = { networks: { development: { host: '127.0.0.1', port: 7545, network_id: 5777 } } };
このtruffle.js
は接続するEthereumのネットワークに関する設定ファイルです。
デプロイする。
コマンドラインから以下を実行し、コントラクトコードをGanacheのネットワークにデプロイします。
truffle migrate --network development
すると以下のようになります。
これでデプロイが完了です。 コントラクトをデプロイした際にETHが減ります。
コンソールを開く
以下のコマンドでコンソールを開きます。
truffle console --network development
送金
前回の記事同様、accounts[0]からaccounts[1]にに送金します。
truffle(development)> token.transfer(web3.eth.accounts[1], 10000e18)
無事送金ができました!
ETHが小数点以下二桁しか表示されていないのでわかりづらいですが、何回か送金すると、gathとしてETHが使用されていることがわかります。
最後に
ネットワークを実際のEthereumに向けてデプロイすると実際にトークンが発行できます。
web3.jsを利用すると実際にコンソールで叩いていたコマンドがjsで実装できるのでアプリケーションが作れます!
github.com
何かいいアイデアが思いついたらDapps作ってみたいと思います!