www4066com如何在本地编译Fabric

作者: 医学科学  发布:2019-10-05

原文发表于cu:2016-06-02

之前的博客都是拿官方现成的Docker镜像来用,但是并没有自己动手做镜像,也没有说到如何去开发和测试Fabric的代码。这一篇博客就从入门的角度讲解如何编译、测试和开发Fabric。

本文属于重发,ovs当前的安装方式可能略有不同。

一、环境准备

要进行相关的开发工作,当然第一步是准备好环境,还是老生常谈,主要是安装Docker、安装Go,下载最新Fabric代码等工作。我这里使用的是VirtualBox里面安装的Ubuntu 16.04,如果您使用的不是这个版本,可能有些命令会有所区别。Fabric开发依赖的工具主要还是参考官方文档:

 参考文档:

1. 使用VirtualBox并在其中安装好Ubuntu

这一步其实没啥好说的,下载好最新版的VirtualBox,下载Ubuntu Server,我用的是Ubuntu16.04.2 X64 Server。我使用的用户是studyzy,不建议直接在root下执行命令。在安装完Ubuntu后,需要保证apt source是国内的,不然如果是国外的话会很慢很慢的。具体做法是

sudo vi /etc/apt/sources.list

打开这个apt源列表,如果其中看到是

:%s/us./cn./g

就可以把所有的us.改为cn.了。然后输入:wq即可保存退出。

sudo apt-get update

更新一下源。

然后安装ssh,这样接下来就可以用putty或者SecureCRT之类的客户端远程连接Ubuntu了。

sudo apt-get install ssh
  1. 官方文档:

2. Go的安装

Ubuntu的apt-get虽然提供了Go的安装,但是版本比较旧,最好的方法还是参考官方网站 ,下载最新版的Go。具体涉及到的命令包括:

wget https://redirector.gvt1.com/edgedl/go/go1.9.2.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.9.2.linux-amd64.tar.gz

【注意:不要使用apt方式安装go,apt的go版本太低了!】

接下来编辑当前用户的环境变量:

vi ~/.profile

添加以下内容:

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

编辑保存并退出vi后,记得把这些环境载入:

source ~/.profile

我们把go的目录GOPATH设置为当前用户的文件夹下,所以记得创建go文件夹

cd ~
mkdir go

运行以下命令查看当前go的版本,如果能够显示go版本,那么说明我们的go安装成功.

go version

 在docker环境下搭建网桥,有传统的brctl工具(yum install -y bridge-utils),也可以采用扩展性/功能性更强大的open vswitch。

3. Docker安装

我们可以使用阿里提供的镜像,安装也非常方便,参考: ,其中Ubuntu的脚本是:

# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装 Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce

安装完成后需要修改当前用户(我使用的用户叫studyzy)权限:

sudo usermod -aG docker studyzy

注销并重新登录,然后添加阿里云的Docker Hub镜像:

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://obou6wyb.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

不同的版本添加方法是不一样的,官方的文档如下:

ovs安装的流程是需要下载源代码之后自行制作rpm安装程序,官方已经把工具集成打包完成,只需要按照步骤操作,即参考上方链接的文档就行。 

当然觉得阿里云镜像不好用,喜欢用DaoClound的也可以用DaoClound的镜像。DaoCloud的镜像设置文档为:

一.前置条件

4. Docker-Compose的安装

Docker-compose是支持通过模板脚本批量创建Docker容器的一个组件。

然后是安装docker-compose,我们从官方网站()下载,运行脚本:

sudo curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

1. 环境

Server:CentOS-7-x86_64-1511 

5.Pip的安装

Pip是基于Python的一个工具,需要安装Python-pip,运行脚本:

sudo apt-get install python-pip

这个脚本会安装Pip所依赖的Python和各种库,所以安装pip完毕后我们也有了Python的环境。运行以下命令可以检查pip和Python的版本:

pip –V

apt安装的版本可能不够新,我们使用以下命令可以更新pip版本:

pip install --upgrade pip

2. 软件

ovs官网:

截止2016年6月1日最新LTS版本下载地址: 

6. Go Tools安装

Fabric使用GO开发,其中用到了一些官方或者第三方的工具,我们也需要下载。尤其是golang的网址被墙了,我们只有访问GitHub的镜像。

mkdir –p $GOPATH/src/golang.org/x
cd $GOPATH/src/golang.org/x
git clone https://github.com/golang/tools.git

等tools下载完毕,我们可以运行以下命令来安装Fabric可能用到的Go工具:

go get github.com/kardianos/govendor
go get github.com/golang/lint/golint
go get golang.org/x/tools/cmd/goimports
go get github.com/onsi/ginkgo/ginkgo
go get github.com/axw/gocov/...
go get github.com/client9/misspell/cmd/misspell
go get github.com/AlekSi/gocov-xml
go get github.com/golang/protobuf/protoc-gen-go

本文由金沙澳门官网发布于医学科学,转载请注明出处:www4066com如何在本地编译Fabric

关键词:

上一篇:没有了
下一篇:没有了