スマートコントラクト ethereum

TruffleでコントラクトをRopstenテストネットワークにデプロイする

TruffleでコントラクトをRopstenテストネットワークにデプロイする
Feb. 2, 2020, 1:51 p.m.

目次

Truffleを使ってコントラクトをRopstenテストネットワークに公開する方法を紹介します.

Truffleの設定

Ropstenテストネットワークに接続したコンソールが必要です.

また設定していない場合は以下を参考に設定して下さい.

TruffleとINFURAで作るEthereum開発環境

また、Ropstenで使える開発用Etherが必要です.

Account1の残高が1ETHよりも少ない場合は以下の記事を参考に入手して下さい.

MetaMaskのインストールと基本操作

コントラクトをRopstenテストネットワークへ公開

TruffleでRopstenへ接続したコンソールを立ち上げます.

1
../node_modules/.bin/truffle console --network ropsten

以下の記事ですでにローカルネットワークへ展開済みのコントラクトをRopstenにも公開します.

Truffleでコントラクトのコンパイルとローカルへのデプロイ

Ropstenは世界中のイーサリアム開発者が参加しているネットワークです.

全世界に公開されることになります.

くれぐれも個人情報など書かないように気をつけましょう.

↓こんなのはダメです.

1
2
3
function say () pure external returns(string) {
    return "シュンです.住んでいるのは東京都港区...。よろしく。";
}

コマンドはローカルの時と全く一緒です.

migrate --reset

世界中のノードで実際にマイニングされます.

そのためローカルでデプロイした時に比べて完了までに時間がかかります.

以下のようなメッセージが表示されたら完了です.

  HelloWorld: 0x00212a3c57843cae0b5fe5400b886fb39d2161c8
Saving successful migration to network...
  ... 0x95d274b2164cd720458a77287fb545239823e4ebf896051a85120375633ddf55
Saving artifacts...

say()が呼び出せるか確かめましょう.

1
2
3
var hw = HelloWorld.at(HelloWorld.address)
hw.say()
"Hello, world!!"

成功です.

もう世界中の誰もが呼び出せる状態です.

TruffleによるRopstenネットワークへのデプロイ方法の紹介は以上です.