一、安装准备

① 查看当前 CPU 架构

  • 在终端中执行以下命令,确定是 32 位架构还是 64 位架构:
~$ uname –px86_64
  • 如果看到输出 x86_64,那么就是 64 位系统,否则是 32 位。

② 下载工具

  • 确保安装了下载工具 wget:
~$ wget –VGNU Wget 1.17.1 built on linux-gnu
  • 如果还没有安装 wget,使用 apt-get 来安装:
~$ sudo apt-get install wget

二、安装 DApp 开发环境

① 安装 Node.js

  • 首先根据 ubuntu 是 32 位还是 64 位,分别下载不同的预编译版本,使用官方长期支持的 8.10.0LTS 版本:
    • 32 位:
~$ wget https://nodejs.org/dist/v8.10.0/node-v8.10.0-linux-x86.tar.gz
    • 64 位:
~$ wget https://nodejs.org/dist/v8.10.0/node-v8.10.0-linux-x64.tar.gz
  • 然后解压到当前目录,以 64 位为例:
~$ tar zxvf node-v8.10.0-linux-x64.tar.gz
  • 然后接下来修改 .bashrc 来设置相关的环境变量:
~$ echo "export NODE_HOME=$HOME/node-v8.10.0-linux-x64">> .bashrc~$ echo "export NODE_PATH=$NODE_HOME/lib/node_modules">> .bashrc~$ echo "export PATH=$NODE_HOME/bin:$PATH" >> .bashrc
  • 最后重新载入 .bashrc(或者重新登录)来使 node 生效:
~$ source .bashrc
  • 现在,可以使用 node:
~$ node –vv8.10.0

② 安装节点仿真器

  • 在终端执行以下命令:
~$ npm install –g ganache-cli
  • 安装完毕后,执行命令验证安装成功:
~$ ganache-cliGanache CLI v6.0.3 (ganache-core: 2.0.2)

③ 安装 solidity 编译器

  • 安装:
~$ npm install –g solc
  • 安装完毕后,执行命令验证安装成功:
~$ solcjs –version0.40.2+commit.3155dd80.Emscripten.clang

④ 安装 web3

  • 安装:
~$ npm install –g web3@0.20.2
  • 安装验证:
~$ node –p 'require("web3")'{[Function: Web3]providers:{}}

⑤ 安装 truffle 框架

  • 执行以下命令安装 truffle 开发框架:
~$ npm install –g truffle
  • 验证安装:
~$ truffle versionTruffle v4.1.3 (core 4.1.3)

⑥ 安装 webpack

  • 执行以下命令安装 webpack:
~$ npm install –g webpack@3.11.0
  • 验证安装:
~$ webpack –v3.11.0

三、构建示例项目

① 新建 DApp 项目

  • 执行以下命令创建项目目录并进入该目录:
~$ mkdir demo~$ cd demo
  • 然后用 webpack 模版初始化项目骨架结构:
~/demo$ truffle unbox webpackDownloading…Unpacking…Setting up…Unbox successful. Sweet!

② 安装项目依赖的 NPM 包

  • 执行以下命令安装 nmp 包:
~/demo$ npm install

③ 修改 truffle 配置

  • truffle.js 中,修改 port 为 8545,因为 ganache-cli 在 8545 端口监听:
module.exports = {networks:{development: { … port: 8545}}}

④ 启动节点

  • 执行以下命令启动节点仿真器,以便部署合约并执行交易:
~/demo$ ganache-cli

⑤ 编译合约

  • 执行以下命令编译项目合约:
~/demo$ truffle compile

⑥ 部署合约

  • 执行以下命令来部署合约:
~/demo$ truffle migrate

⑦ 启动 DApp

  • 执行以下命令来启动 DApp:
~/demo$ npm run dev
  • 在浏览器里访问 http://localhost:8080 即可。

  • 如果希望从别的机器也可以访问 DApp 应用,修改一下 package.json:
{scripts:{"dev": "webpack-dev-server –-host 0.0.0.0"}}