Ubuntu配置Open BlockChain
/* 以前只是听说过BlockChain,没怎么了解过,最近导师在搞Blockchain,让我配一下Open BlockChain的环境,于是就硬着头皮配了一下,还挺顺利的。 由于没接触过BlockChain,配置有什么问题还请各位大神指正*/
环境:Ubuntu14.04 x64
一、准备工作:
1.Git Client
Ubuntu自带git client 所以省略此步骤
2.Go环境配置
参考:http://xianglong.me/article/ubuntu-install-golang-env/
(1) 安装依赖:
sudo apt-get install bison ed gawk gcc libc6-dev make
(2) 下载go1.6.2.linux-amd64.tar.gz
从https://golang.org/dl/,下载go1.6.2.linux-amd64.tar.gz, 由于国内经常被墙,备份了一份在http://pan.baidu.com/s/1gfDEG0r
(3) 安装go语言包
进入go1.6.2.linux-amd64.tar.gz所在目录,解压go1.6.2到$Home/Code (或其他目录),运行:
tar -zxvf go1.6.2.linux-amd64.tar.gz -C ~/Code
(4) 配置环境变量
编辑~/.bashrc,在文件末尾添加:
export GOROOT=$HOME/Code/go
export GOBIN=$GOROOT/bin
export PATH=$GOROOT/bin:$PATH
export GOPATH=$HOME/Code/workspace/Go
退出,运行source ~/.bashrc 使环境变量生效
(5) 测试Go开发环境
在终端输入go,则会出现帮助信息
建立测试文件hello.go,内容如下
package main
import "fmt"
func main() {
fmt.Printf("Hello World!\n")
}
运行:go run hello.go
如果go环境配置正确,则打印Hello World!
3.VirtualBox配置
参考:http://www.mamicode.com/info-detail-193664.html
(1) 下载virtualbox-5.0_5.0.20-106931-Ubuntu-trusty_amd64.deb
在https://www.virtualbox.org/wiki/Downloads下载
virtualbox-5.0_5.0.20-106931-Ubuntu-trusty_amd64.deb
(2) 安装virtualbox-5.0_5.0.20-106931-Ubuntu-trusty_amd64.deb
在终端运行:
sudo dpkg -i virtualbox-5.0_5.0.20-106931-Ubuntu-trusty_amd64.deb
如果提示缺少依赖包,那么执行sudo apt-get -f install 修复依赖关系,然后再次执行sudo dpkg -i virtualbox-5.0_5.0.20-106931-Ubuntu-trusty_amd64.deb;
如果提示Failed, trying without DKMS,则需要sudo apt-get install dkms;
(3) 测试virtualbox
virtualbox –help,如果显示帮助文档,则表示安装成功
4.vagrant配置
(1) 下载vagrant_1.8.1_x86_64.deb
从https://www.vagrantup.com/downloads.html,选择的是DEBIAN 64-bit版本

(2) 安装vagrant_1.8.1_x86_64.deb
在终端运行sudo dpkg -i vagrant_1.8.1_x86_64.deb,安装vagrant
(3) 测试
在执行vagrant之前首先配置box:
下载需要使用的 box :
官方提供的范例:http://files.vagrantup.com/precise32.box
还可以在 http://www.vagrantbox.es/ 这里下载更多不同系统甚至是已经配置好环境直接可以用的box,虽然可以直接在Vagrant直接使用网址,由Vagrant自动下载安装,但是考虑到网络情况,还是建议自行先下载好。
$ vagrant box add {title} {url}/{box_path}
$ vagrant init {title}
$ vagrant up
至此vagrant安装完毕。其他vagrant命令:
$ vagrant init # 初始化
$ vagrant up # 启动虚拟机
$ vagrant halt # 关闭虚拟机
$ vagrant reload # 重启虚拟机
$ vagrant ssh # SSH 至虚拟机
$ vagrant status # 查看虚拟机运行状态
$ vagrant destroy # 销毁当前虚拟机
二、配置openblockchain开发环境
参考:https://github.com/openblockchain/obc-docs/blob/master/dev-setup/devenv.md
和
https://github.com/openblockchain/obc-peer/blob/master/README.md
1.clone Open Blockchain工程和Open Blockchain Development Environment工程
(1) clone the Open Blockchain Peer project
执行下面命令克隆Open Blockchain Peer project
cd $GOPATH/src
mkdir -p github.com/openblockchain
cd github.com/openblockchain
git clone https://github.com/<username>/obc-peer.git
(2) clone the Open Blockchain Peer project
选择别的目录(不在GOPATH目录树下),创建workspace文件件(或其他文件名)
执行命令:
cd workspace
git clone https://github.com/openblockchain/obc-dev-env.git
2. 初始OBC开发环境
(1) 初始化
进入workspace/ obc-dev-env/
执行:vagrant up进行初始化
过程中自动下载virtualbox.box
(2) ssh进入虚拟机
在workspace/ obc-dev-env/下执行:vagrant ssh则会进入OBC的虚拟机

至此,OBC虚拟机配置完毕
3. build, run and test the Open Blockchain Peer project
(1) Building the project
进入$GOPTH/src/github.com/openblockchain/obc-peer
(如果不知道GOPTH路径,运行echo $GOPATH进行查看)
运行go build进行构建项目
(此过程可能需要root权限,可以运行sudo go build进行构建,初始密码应该为空;如果想进入root用户,可以执行sudo passwd root创建root用户密码,但root用户下没有配置Go环境变量,可在/root/.bashrc文件中进行配置)
(2) Run
执行
cd $GOPATH/src/github.com/openblockchain/obc-peer
./obc-peer
则会打印文档信息

至此,Openchain – Peer运行成功
(3) Test
没仔细配,待完善
注意的是进行Behave测试时,测试需要安装python的behave模块,可参考
http://pythonhosted.org/behave/
https://pypi.python.org/pypi/behave
http://pythonhosted.org/behave/install.html (安装easy_install工具:sudo apt-get install python-setuptools)
By Xu Yuzhuang
Email:dazh_xu@163.com
Date:2016-05-07
Ubuntu配置Open BlockChain的更多相关文章
- ubuntu配置NFS
		ubuntu配置NFS: sudo apt-get install nfs-kernel-server 配置/etc/exports 例如:我们要将根目录下的 /opt/FriendlyARM/min ... 
- ubuntu配置tftp服务
		ubuntu配置TFTP服务: TFTP是用来下载远程文件的最简单的网络协议,基于UDP协议.xinetd是新一代的网络守护进程服务程序,经常用于管理多种轻量型internet服务. sudo apt ... 
- 关于ubuntu配置静态IP 无法正常上网的解决方案
		在ubuntu中配置静态IP后无法正常上网. 解决: 1.在终端执行 vim /etc/network/interfaces 在文件中加入如下内容,网关要写上,我开始一直无法上网就是因为没有配置网关 ... 
- 转: ubuntu配置NFS,挂载开发板
		====================================== 命令: 1. $sudo apt-get install nfs-kernel-server (安装N ... 
- Ubuntu配置和修改IP地址
		Ubuntu配置和修改IP地址 1.修改配置文件/etc/network/interfacesroot@ubuntu:~# sudo gedit /etc/network/interfaces 添加以 ... 
- ubuntu 配置JDK环境变量
		ubuntu 配置JDK环境变量 (2011-11-25 16:45:59) 转载▼ 标签: ubuntu jdk 环境变量 杂谈 分类: Linux_Ubuntu_CentOs 过程如下: 1. 先 ... 
- Ubuntu配置OpenStack 二:配置时间同步NTP和安装数据库Maridb以及问题总结
		继上一节Ubuntu配置OpenStack 一:配置主机环境,下面继续为安装时间同步,以及配置openstack的安装包源和安装数据库Maridb.(全文截图都是由自己徒手搭建完成并且截图) 一.安装 ... 
- Ubuntu配置tomcat9
		buntu 安装jdk:[链接] Ubuntu安装eclipse:[链接] Ubuntu下安装MySQL与mysql workbench:[链接] Ubuntu配置tomcat9:[链接] Ubunt ... 
- ubuntu配置小飞机
		现在有两种方式在ubuntu配置本地shadowsocks(前提已经在服务器上搭建好了ss) windows,ios和安卓配置都是gui,没什么好说的.然后前期工作什么买vps啊,比较无脑,不想记录这 ... 
随机推荐
- UVA 590	二十一 Always on the run
			Always on the run Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit ... 
- UVA 10163	十六 Storage Keepers
			十六 Storage Keepers Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit ... 
- 【转载】ADO,OLEDB,ODBC,DAO的区别
			原文:ADO,OLEDB,ODBC,DAO的区别 ODBC(Open Database Connectivity,开放数据库互连) 1992年,微软公司开放服务结构(WOSA,Windows Open ... 
- Linux 新手非常有用的命令
			http://www.cnblogs.com/felix-/p/4341773.html Linux 新手非常有用的命令 你打算从Windows换到Linux上来,还是你刚好换到Linux上来?哎哟! ... 
- css参考文档; 官方英文说明!!   1  margin padding 百分比参照物     2 margin值为auto时的说明 3 div在div里垂直居中方法 4 dispaly:flex说明
			css参考文档 http://css.doyoe.com/ 两篇很好的文章:(下面的css官方英文说明链接 有时间可以研究下 http://www.w3.org/TR/css3-box/ ... 
- MySQL(七) —— MySQL存储过程 & 存储引擎
			MySQL中输入语句的执行过程: 如果我们可以将上面的过程简化,吧语法分析或者编译等步骤简化,则可以将整个流程简化. 存储过程: 是SQL语句和控制语句的预编译集合,以一个名称存储并作为一个单元处理: ... 
- JUnit 单元测试  配置
			选中工程,右键 built path , add liberaries , JUnit , JUnit4 这样就不用每次测试时都在main方法中写了 
- 将文件读取到内存、打印pe结构
			#include <stdio.h> #include <malloc.h> #include <stdlib.h> #include <string.h&g ... 
- servlet&jsp高级:第五部分
			声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ... 
- MyEclipse JCO tomcat 提示查找不到sapjco3.dll
			java.lang.UnsatisfiedLinkError: no sapjco3 in java.library.path 1.system32添加sapjco3.dll 2.tomcat bin ... 
