Ubuntu14.0搭建以太坊私有链开发环境

目录
  • 前言
  • 依赖环境
  • 步骤
  • 跑一个例子
  • 参考链接

前言

区块链有多热就不说了. 结合实操,搭建一个基于truffle框架的以太坊私有链开发环境。

依赖环境

  • 虚拟机 VMware® Workstation 12 Pro ,不多解释。
  • ubuntu-14.04 ubuntu-14.04-desktop-amd64.iso ,不多解释。
  • nodejs ,用来安装truffle等工具
  • truffle ,目前最好用的以太坊开发框架
  • ganache ,可以跑开发环境下的私有区块链

步骤

  1. 前提是ubuntu已经可以正常使用,包括上网。
  2. 下载nodejs,按经验apt-get安装的nodejs不可用,估计apt-get源上的nodejs版本不对,建议使用nodejs官方github上的release 版本 ,可以git clone, 再git checkout 到某个指定版本。也可直接下载某个稳定版本,比如:
wget https://github.com/nodejs/node/archive/v9.3.0.tar.gz

3.由于nodejs的编译需要 gcc/g++ 4.9.2以上,ubuntu14.04自带4.8.所有需要先更新到 gcc/g++ 4.9.2

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.9
sudo apt-get install g++-4.9
ln -s /usr/bin/g++-4.9 /usr/bin/g++ -f   //修改链接,指向4.9
ln -s /usr/bin/gcc-4.9 /usr/bin/gcc -f   //修改链接,指向4.9

4.编译并安装nodejs

cd ~/work/nodejsgit/node-9.3.0  //进入node代码目录
make //编译,等待一段较长时间
make install //安装
liao@ubuntu:~/work/nodejsgit/node-9.3.0$ node -v  //查看node版本
v9.3.0
liao@ubuntu:~/work/nodejsgit/node-9.3.0$ npm -v   //查看npm版本
5.5.1

5.安装truffle

npm install -g truffle

6.下载并安装ganache

wget https://github.com/trufflesuite/ganache/releases/download/v1.0.1/ganache-1.0.1-x86_64.AppImage  //下载ganache
chmod +x ganache-1.0.1-x86_64.AppImage //修改权限
sudo ./ganache-1.0.1-x86_64.AppImage //启动ganache

跑一个例子

  1. 启动区块链网络ganache
root@ubuntu:/home/liao/work# ./ganache-1.0.1-x86_64.AppImage

Ubuntu14.0搭建以太坊私有链开发环境_第1张图片

Ubuntu14.0搭建以太坊私有链开发环境_第2张图片

  1. 新建项目
liao@ubuntu:~/work$ mkdir myproject  //新建一个工作目录

liao@ubuntu:~/work$ cd myproject/    //进入项目目录

liao@ubuntu:~/work/myproject$ truffle init //初始化Truffle 项目

liao@ubuntu:~/work/myproject$ ls        //查看产生的文件
build  contracts  migrations  test  truffle-config.js  truffle.js

liao@ubuntu:~/work/myproject$ cat truffle.js //修改配置文件后如下
module.exports = {
  // See 
  // to customize your Truffle configuration!
  networks: {
    development: {
      host: "127.0.0.1",  //本地地址,ganache log中可看到
      port: 7545, //端口,ganache log中可看到
      network_id: "*" // Match any network id
    }
  }
};

liao@ubuntu:~/work/myproject$ truffle compile //编译

liao@ubuntu:~/work/myproject$ truffle migrate //跑migrate
Using network 'development'.

Network up to date.
  1. 或使用一个自带的例子
mkdir MetaCoin
cd MetaCoin
truffle unbox metacoin
truffle compile
truffle migrate

  • truffle installation
  • nodejs release
  • ganache release
  • ganache-cli release
  • debugging contract

你可能感兴趣的:(区块链)