LoginSignup
2
1

More than 3 years have passed since last update.

Ganacheでローカルブロックチェーンを作成しRemixからデプロイする

Posted at

概要

Ethereumのスマートコントラクトの開発のために、Ganacheでローカルの開発環境を用意し、Remixからスマートコントラクトをローカル環境にデプロイしてみます。

Ganache

https://truffleframework.com/ganache
Ethereum のローカル開発環境。GUI版とCLI版があります。
今回はGUI版で試してみます。
公式サイトからダウンロードして起動するだけです。
本記事時点ではv2.0.1です。

Remix

https://remix.ethereum.org/
スマートコントラクトにはSolidityという言語を使用します。
RemixはブラウザベースのSolidity用のIDE(統合開発環境)です。
Solidityソースコードのエディット、コンパイル、デプロイ、デバッグを行うことができます。

Remixでスマートコントラクトを書く

helloWorld.sol
pragma solidity >=0.4.0 <0.6.0;

contract Hello {

    function helloWorld () public pure returns (string memory) {
        return "Hello World";
    }
}

HelloWorldを出力するコントラクトを書いてます。
Solidityについて調べるとv0.4.0系の記事が多いのですが、v0.5.0から引数に明示的にmemoryを宣言する必要があるみたいです。
参考
Solidity v0.5.0 Breaking Changesでの変更点をコントラクトべースで見てみる

Ganacheにデプロイする

先にGanacheを起動しましょう。
01.jpg
Remixの右側のタブにある、Start to compileを押してコンパイルします。
03.JPG
Runタブに切り替えてEnvironmentをWeb3 Providerに切り替えます。
Are you sure you want to connect to an ethereum node?
というのが出るのでOKを押します。
Web3 Provider EndpointはデフォルトではCLI版のhttp://localhost:8545になっていますが、
GanacheをGUIで起動した場合はhttp://localhost:7545で起動していると思うので書き換えてOKを押しましょう。
04.JPG
そしたら、Deployを押します。

Ganacheで確認する

05.JPG
Ganacheで確認すると新しくトランザクションが作成されていると思います。
おめでとうございます。これでローカルの環境にスマートコントラクトをデプロイすることができました!

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1