zoukankan      html  css  js  c++  java
  • 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!
    ")
    }

    运行: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

  • 相关阅读:
    Java 线程具有五中基本状态 ?
    可以直接调用 Thread 类的 run ()方法么?
    创建线程的三种方式的对比?
    FutureTask 是什么 ?
    什么是 CAS?
    如何让正在运行的线程暂停一段时间?
    什么是不可变对象(immutable object)?Java 中怎么 创建一个不可变对象?
    创建线程的有哪些方式?
    Semaphore 有什么作用 ?
    CopyOnWriteArrayList 可以用于什么应用场景?
  • 原文地址:https://www.cnblogs.com/fengzhiwu/p/5469291.html
Copyright © 2011-2022 走看看