您的位置:首页 > 大数据 > 人工智能

开源区块链ChainCore源码方式安装

2017-02-08 00:00 148 查看
摘要: 尽管ChainCore给我们提供了简单易用的Docker容器,但是想深入学习ChainCore,只使用Docker容器是不够的。

安装环境要求

Ubuntu

Golang

PostgreSQL

Google ProtoBuf

本文中采用具体环境

Ubuntu 16.04

Golang 1.7.5

PostgreSQL 9.5.5

Google ProtoBuf 2.6.1

Golang环境安装

如果机器上已经安装过Golang,则可以跳过此步骤。

下载Golang安装包

下载地址为:https://storage.googleapis.com/golang/go1.7.5.linux-amd64.tar.gz

传送门

安装Golang

假定golang安装包的名称没有改过(名称为go1.7.5.linux-amd64.tar.gz)

打开Terminal,进入root用户模式,cd到安装包所在路径

# 解压
tar zxf go1.7.5.linux-amd64.tar.gz
# 移动解压后的go目录
mv go /usr/local/go
# 配置环境变量
vim /etc/profile

在 /etc/profile 后面追加配置:

export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin

环境变量添加成功后,有两种方式使环境变量生效

注销系统,重新登录

使用source命令,这种方式仅限当前Terminal中有效

对于第二种方式,命令如下

source /etc/profile

上述步骤完成后,可以使用 go version 命令检查go环境时候安装成功

PostgreSQL环境搭建

安装PostgreSQL

如果已经安装PostgreSQL,可以跳过此步骤

对于PostgresSQL的安装,我们可以用最简单的方式安装,即 apt-get install 方式

apt-get install postgresql-9.5

命令执行结束后,可以使用如下命令查看安装PostgreSQL数据库的版本号

psql --version


数据库创建,配置

为了稍后ChainCore使用数据库,我们需要对数据库进行创建以及配置

数据库密码修改

打开Terminal,进入root用户模式

# 切换到postgres账号
su postgres
# 打开sql交互器
psql

在打开的sql交互器中,输入修改账号密码的sql语句:

alter user postgres with password 'postgres';

修改成功后,会输出 ALTER ROLE

输入 Ctrl + D 组合键退出sql交互器

数据库创建

打开Terminal,进入root用户模式

# 切换到postgres账号
su postgres
# 创建一个名为core的数据库
createdb core


配置数据库外网可访问

此步骤对于ChainCore源码方式安装不是必须的

打开Terminal,进入root用户模式

# 编辑postgresql配置文件
vim /etc/postgresql/9.5/main/postgresql.conf

在配置文件的 CONNECTIONS AND AUTHENTICATION 部分中,将注释的 #listen_addresses = 'localhost' 修改为如下配置:

listen_addresses = '*'

注意,#符号被删除,localhost改为*

接下来修改 pg_hba.conf 配置文件

vim /etc/postgresql/9.5/main/pg_hba.conf

在pg_hba.conf 配置文件添加一条配置,如下:

host    all             all             0.0.0.0/0               md5

完成后,重启postgres服务

# 重启 postgresql 服务
service postgresql restart


Google ProtoBuf安装

对于ProtoBuf的安装,只需要一条命令即可:

apt-get install protobuf-compiler


ChainCore安装

下载源码

源码可以在ChainCore的GitHub上下载,转送门

目前ChainCore的最新release版本为1.0.2,下载传送门

假定我们下载的ChainCore压缩包文件名为 chain-cmd.cored-1.0.2.tar.gz

# 解压源码压缩包
zxf chain-cmd.cored-1.0.2.tar.gz
# 修改解压目录名称
mv chain-cmd.cored-1.0.2 chain
# 创建目录来存放ChainCore源码
mkdir -p ~/chaincore/src
# 移动解压的源码目录
mv chain ~/chaincore/src

完成后,确保你的ChainCore源码放在了 $HOME/chaincore/src/chain 目录下

配置用户环境变量

使用如下命令配置用户环境变量

vim ~/.profile

在用户环境变量中,加入如下环境变量

# go 项目路径
export GOPATH=$HOME/chaincore
# ChainCore 数据库连接URL
export DATABASE_URL=postgres://postgres:postgres@localhost/core?sslmode=disable
# Chain 路径
export CHAIN=$(go env GOPATH)/src/chain

export PATH=$PATH:$(go env GOPATH)/bin:$CHAIN/bin


编译ChainCore

cd $CHAIN
go install ./cmd/...

如果没有任何错误输出,则ChainCore编译成功

启动ChainCore

运行ChainCore非常简单,只需要用如下命令即可启动:

cored

当看到 Chain Core online and listening at :1999 时,ChainCore就已经启动成功了

打开数据库管理工具,可以看到 core 数据库中已经创建了几张数据表



我们可以打开浏览器,访问 http://localhost:1999,即可以访问ChainCore提供的开发者看板工具。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息