Ubuntu14.0安装以太坊私有链开发环境
2018-01-06 本文已影响0人
疯之爽
目录
- 前言
- 依赖环境
- 步骤
- 跑一个例子
- 参考链接]
前言
区块链有多热就不说了. 结合实操,搭建一个基于truffle框架的以太坊私有链开发环境。
依赖环境
- 虚拟机 VMware® Workstation 12 Pro ,不多解释。
- ubuntu-14.04 ubuntu-14.04-desktop-amd64.iso ,不多解释。
- nodejs ,用来安装truffle等工具
- truffle ,目前最好用的以太坊开发框架
- ganache ,可以跑开发环境下的私有区块链
步骤
- 前提是ubuntu已经可以正常使用,包括上网。
- 下载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 //安装
lia@ubuntu:~/work/nodejsgit/node-9.3.0$ node -v //查看node版本
v9.3.0
lia@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
跑一个例子
- 启动区块链网络ganache
root@ubuntu:/home/liao/work# ./ganache-1.0.1-x86_64.AppImage
- 新建项目
lia@ubuntu:~/work$ mkdir myproject //新建一个工作目录
lia@ubuntu:~/work$ cd myproject/ //进入项目目录
lia@ubuntu:~/work/myproject$ truffle init //初始化Truffle 项目
lia@ubuntu:~/work/myproject$ ls //查看产生的文件
build contracts migrations test truffle-config.js truffle.js
lia@ubuntu:~/work/myproject$ cat truffle.js //修改配置文件后如下
module.exports = {
// See <http://truffleframework.com/docs/advanced/configuration>
// to customize your Truffle configuration!
networks: {
development: {
host: "127.0.0.1", //本地地址,ganache log中可看到
port: 7545, //端口,ganache log中可看到
network_id: "*" // Match any network id
}
}
};
lia@ubuntu:~/work/myproject$ truffle compile //编译
lia@ubuntu:~/work/myproject$ truffle migrate //跑migrate
Using network 'development'.
Network up to date.
- 或使用一个自带的例子
mkdir MetaCoin
cd MetaCoin
truffle unbox metacoin
truffle compile
truffle migrate