fabric开发环境

fabric搭建

实测有效的搭建教程:

http://www.cnblogs.com/studyzy/p/6365969.html

搭建时的环境

  • git version 1.9.1
  • docker-compose version 1.12.0
  • Docker version 1.9.1
  • go version go1.8rc1

系统采用容器的方式运行,构建过程简单、各组件分工清晰:

  • Docker-compose:Docker 容器管理;
  • Go lang SDK:Go 语言开发、编译环境;
  • Git:git 镜像克隆与提交;
  • Rest Client: rest API 测试;

容器主要运行有:MemberSrv 和Peer;

ubuntu 搭建docker

版本支持

Docker支持以下几个版本的Ubuntu操作系统:

  • Ubuntu Trusty 14.04 (LTS)
  • Ubuntu Precise 12.04 (LTS)
  • Saucy 13.10
    注意:虽然这几个版本都可以安装,但最好是使用Docker官方提供的最新安装版本。

系统要求

无论Ubuntu系统是以上那个版本,必须满足以下两个条件:

  • 必须是64-bit系统
  • 内核必须是3.10以上版本

    查看你当前系统是否满足条件:

    $uname -a

3.13.0-51-generic 表示当前Ubuntu系统的内核版本号,后面的x86_64表示本系统是64位。

注:我是在虚拟机(VMware)Ubuntu系统中安装Docker的,故会出现Linux jeff-virtual-machine字样(jeff-virtual-machine是虚拟机中Ubuntu系统的计算机名)虚拟机安装教程 —— [ 在VMware中安装Ubuntu]

安装教程

http://www.linuxidc.com/Linux/2014-08/105656.htm
http://www.linuxidc.com/Linux/2014-10/108184.htm

问题

按照官网教程执行sudo apt-get install lxc-docker出现

Unable to locate package lxc-docker

stackoverflow找到如下解决:

sudo sh -c "curl https://get.docker.io/gpg | apt-key add -"  
sudo sh -c "echo deb http://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
sudo apt-get update
sudo apt-get install lxc-docker

输入:

Do you want to continue [Y/n]? y 

后,等一会儿

sudo service docker status

可以看到已经在运行

常用docker命令,及一些坑

常用命令

  • 查看容器的root用户密码

docker logs <容器名orID> 2>&1 | grep ‘^User: ’ | tail -n1

因为docker容器启动时的root用户的密码是随机分配的。所以,通过这种方式就可以得到redmine容器的root用户的密码了。

  • 查看容器日志

docker logs -f <容器名orID>

  • 查看正在运行的容器

docker ps
docker ps -a为查看所有的容器,包括已经停止的。

  • 删除所有容器

docker rm $(docker ps -a -q)

  • 删除单个容器

docker rm <容器名orID>

  • 停止、启动、杀死一个容器

docker stop <容器名orID>
docker start <容器名orID>
docker kill <容器名orID>

  • 查看所有镜像

docker images
- 删除所有镜像
docker rmi (docker images | grep none | awk '{print3}’ | sort -r)

  • 运行一个新容器,同时为它命名、端口映射、文件夹映射。以redmine镜像为例

docker run –name redmine -p 9003:80 -p 9023:22 -d -v /var/redmine/files:/redmine/files -v /var/redmine/mysql:/var/lib/mysql sameersbn/redmine

  • 一个容器连接到另一个容器

docker run -i -t –name sonar -d -link mmysql:db tpires/sonar-server
sonar

  • 容器连接到mmysql容器,并将mmysql容器重命名为db。这样,sonar容器就可以使用db的相关的环境变量了。

  • 拉取镜像

docker pull <镜像名:tag>

docker pull sameersbn/redmine:latest

  • 当需要把一台机器上的镜像迁移到另一台机器的时候,需要保存镜像与加载镜像。

机器a

docker save busybox-1 > /home/save.tar

  • 使用scp将save.tar拷到机器b上,然后:

docker load < /home/save.tar

  • 构建自己的镜像

docker build -t <镜像名>

ubuntu14下的docker是没有service服务。去除每次sudo运行docker命令,需要添加组:

Add the docker group if it doesn’t already exist.

$ sudo groupadd docker

改完后需要重新登陆用户

sudogpasswda {USER} docker

ubuntu14的febootstrap没有-i命令

Dockerfile中的EXPOSE、docker run –expose、docker run -p之间的区别
Dockerfile的EXPOSE相当于docker run –expose,提供container之间的端口访问。docker run -p允许container外部主机访问container的端口

fabric环境搭建

教程

http://www.linuxdiyf.com/linux/27296.html
http://www.cnblogs.com/studyzy/p/6365969.html
http://blog.csdn.net/yl_1314/article/details/53908973

go下载及安装配置

http://blog.csdn.net/sunylat/article/details/50812998

安装docker-compose

Docker-compose是支持通过模板脚本批量创建Docker容器的一个组件
https://docs.docker.com/compose/install/
https://docs.docker.com/compose/install/#alternative-install-options

切换docker镜像下载源为国内镜像

http://blog.csdn.net/huludan/article/details/52713799

问题

  • ubuntu14.04 docker上fig问题Couldn’t connect to Docker daemon at http+unix://var/run/docker.sock
    http://blog.csdn.net/qiyueqinglian/article/details/46559825

linux命令

删除软件

方法一、如果你知道要删除软件的具体名称,可以使用

sudo apt-get remove --purge 软件名称  
sudo apt-get autoremove --purge 软件名称 

方法二、如果不知道要删除软件的具体名称,可以使用

dpkg --get-selections | grep ‘软件相关名称’
sudo apt-get purge 一个带core的package,如果没有带core的package,则是情况而定。

清理残留数据

dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P 

你可能感兴趣的:(区块链,fabric)