部署智能合约到以太坊网络(truffle+infura)

开发环境

  • MacOS 10.13.6
  • node v10.9.0
  • Truffle v4.1.14 (core: 4.1.14)
  • Solidity v0.4.24 (solc-js)

登录infura官网注册,获取API-KEY

Infura是一个托管的以太坊节点集群,可以将你编写的以太坊智能合约部署到infura提供的节点上,而无需自己搭建以太坊节点。


安装HDWalletProvider

Infura的HDWalletProvider是一个独立的npm软件包,切换到truffle工程目录使用如下命令安装

  • npm install truffle-hdwallet-provider
  • 然后修改truffle.js文件内容如下:
// 定义HDWalletProvider对象
var HDWalletProvider = require("truffle-hdwallet-provider");
// 提供助记词(mnemonic)来生成你的账户
var mnemonic = "topic foster find apple famous have bonus month remain middle funny smart";
// 添加Ropsten测试网络定义
module.exports = {
  networks: {
    ropsten: {
      provider: function() {
      // 定义以太坊节点 https://ropsten.infura.io/your-api-key
       return new HDWalletProvider(mnemonic, "https://ropsten.infura.io/503fc5af65d64cdaa090d2873201bc5a")
      },
      network_id: 3
    }
  }
};


部署到以太坊网络

  • 执行如下命令,部署到以太坊测试网络ropsten
truffle migrate --network ropsten

获取Ropsten测试网的ETH币:

确保你的帐户有足够的账户余额来进行部署。 可以通过称Faucet的服务在Ropsten网络上获取Ether。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 这几天除了睡觉其他时间大脑好像没有停止过,总有念头冒出来,一直处在抗奋的状态,好像是开启了新的认知,窥探到了以前从...
    080661494e52阅读 330评论 0 3
  • 姓名:乐美清 公司:宁波华光 《六项精进》第340期 反省二组学员 【日精进打卡第41天】 【知~学习】 《六项精...
    乐美清阅读 131评论 0 0
  • 自从有了孩子后,我给孩子买的最多的礼物就是书。儿子上学前,我给他买了当时最流行的《蓝猫淘气三千问》,《幼儿画报》等...
    梧桐花儿开阅读 943评论 0 1