一、环境
软件: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