ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

区块链实验(一)——运行Truffle-Dapp

2021-02-23 13:01:36  阅读:232  来源: 互联网

标签:node bin dapp x64 v14.15 Dapp linux Truffle 区块


一、环境

软件:ubuntu18.04LTS虚拟机

二、步骤

2.1 安装Node.js

进入官网https://nodejs.org/en/download/下载基于x64平台的linux二进制文件到本地主目录中。

~$ tar xf node-v14.15.4-linux-x64.tar.xz
~$ cd node-v14.15.4-linux-x64
node-v14.15.4-linux-x64$ ./bin/node -v
node-v14.15.4-linux-x64$ sudo ln -s ~/node-v14.15.4-linux-x64/bin/npm   /usr/local/bin/
node-v14.15.4-linux-x64$ sudo ln -s ~/node-v14.15.4-linux-x64/bin/node   /usr/local/bin/
node-v14.15.4-linux-x64$ node -v
node-v14.15.4-linux-x64$ npm -v

2.2 安装Truffle

改用taobao的npm镜像:

修改~/.npmrc文件,写入

registry = https://registry.npm.taobao.org

 同时,

~$ npm config set disturl https://npm.taobao.org/dist

 然后,

~$ npm install -g truffle
~$ sudo ln -s ~/node-v14.15.4-linux-x64/bin/truffle   /usr/local/bin/

2.3 创建一个项目

先使用https://github.com/googlehosts/hosts/tree/master/hosts-files中的hosts文件更换本地/etc/hosts,重启,

然后,

~$ mkdir dapp
~$ cd dapp
dapp$ truffle unbox webpack

2.4 选择以太坊客户端

以Ganache-cli为例:(试过Ethereumjs-testrpc和Truffle-Develop均无法成功部署合约)

~$ sudo npm install -g ganache-cli
~$ sudo ln -s ~/node-v14.15.4-linux-x64/bin/ganache-cli /usr/local/bin/

2.5 编译和部署合约

修改truffle-config.js文件为(ganache-cli的监听端口还是8545):

module.exports = {
  networks: {
    development: {
      host: "127.0.0.1",     // Localhost (default: none)
      port: 8545,            // Standard Ethereum port (default: none)
      network_id: "*"       // Any network (default: none)
    }
  }
}

 编译:

~$ cd dapp
dapp$ truffle compile

启动服务:

~$ cd dapp
dapp$ ganache-cli

另起一终端进行合约部署:

~$ cd dapp
dapp$ truffle migrate

2.6 测试网页与合约的交互

dapp$ cd app
app$ npm run dev

浏览器打开http://localhost:8080/可以看到一个demo网页。

三、参考

https://baijiahao.baidu.com/s?id=1597236535233062436&wfr=spider&for=pc

https://blog.csdn.net/weixin_44029550/article/details/110756265

https://blog.csdn.net/d_append/article/details/104548195

标签:node,bin,dapp,x64,v14.15,Dapp,linux,Truffle,区块
来源: https://blog.csdn.net/Sleep_Sheep_/article/details/113664455

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有