验证码 看不清,刷新一下
发送验证码
忘记密码
确定 已有账号,直接登录
其他方式登录
微信 短信

manbetx交流群-新濠国际平台客服电话

链块学院 ·

2018年12月14日

热度: 13737

超级账本Fabric系列教程(二):本节分享超级账本运行环境docker容器的搭建。

点击区块链技术培训课程获取更多区块链技术学习资料。

一、目录

HyperLedger超级账本运行环境-Docker容器介绍

目录

推荐linux系统

通过虚拟机安装ubuntu

Docker

简介

组成部分

为什么用docker

与传统虚拟机的比较

应用场景

优点

场景示例

docker的版本

Docker的Hello world

运行容器里的终端

查看所有运行的容器 docker ps查看容器日志 docker logs 填入容器id停止容器 docker stop运行一个web应用

Docker compose

能够在主机上创建出相互隔离的网络,通过命令行管理多个容器。在mac和windows中都集成了compose工具,不用重新安装。在linux中的安装方法:

配置文件

常用命令

镜像

使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载

二、推荐linux系统

CentOS、Debian、Fedora、Ubuntu等Linux系统,可以通过官方提供的脚本进行安装。docker的发展非常迅速,apt源的更新往往比较滞后。所以docker官网推荐的安装方式都是下载docker安装脚本安装。 推荐使用Ubuntu16.04

2.1通过虚拟机安装ubuntu

虚拟机种类

Parallels Desktop

VMware

Virtualbox

安装golang

虚拟机网络配置

三、Docker

3.1简介

安装环境:Docker (compose)。 名词解释: Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上。基于 Go 语言 并遵从Apache2.0协议开源。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。Docker通过对应用组件的封装、分发、部署、运行等生命周期的管理,达到应用组件级别的“一次封装,到处运行”。这里应用组件,即可以是Web应用,也可以是一套数据库服务,甚至是一个操作系统或编译器。

Docker 支持 Linux、 Mac、 Windows 等 多个 平台, 安装 文档 参考: https://docs.docker-cn.com/

在 Linux 环境 下 Docker 的 安装 Ubuntu、 Debian、 CentOS 等 Linux 系统, 可以 通过 Docker 官方 提供 的 脚本 进行 安装:curl -sSL https:// get. docker. com | sh然后 把 用户 加入 到 docker 组, 非 root 用户 USER 可以 执行 docker 命令( 可能 需要 重新 登录 生效): sudo usermod -aG docker $ USER 如果 是 Ubuntu 或者 Debian 操作系统, 修改 Docker 的 配置文件/ etc/ default/ docker, 增加 Docker 的 socket 绑 定, 运行 在 Docker 中的 进程 才能 通过 映射 的 socket 调用 Docker 的 API 执行 镜像 编译 和 创建 容器 等 操作。

DOCKER_ OPTS="- s= aufs -r= true --api- cors- header='*' -H tcp:// 0. 0. 0. 0: 2375 -H unix:/// var/ run/ docker. sock " 接着, 重 启 Docker 服务 让 配置 生效:

sudo service docker start 3.2组成部分

镜像(Image)

容器(Container)

仓库(Repository)

3.3为什么用docker

快速的交付和部署

方便迁移和扩展

更新管理方便

3.4与传统虚拟机的比较

3.5应用场景

Web应用的自动化打包和发布

自动化测试和持续集成和发布

在服务型环境中部署和调整数据库或其他的后台应用

3.6优点

简化流程

Docker 让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,便可以实现虚拟化。Docker改变了虚拟化的方式,使开发者可以直接将自己的成果放入Docker中进行管理。方便快捷已经是 Docker的最大优势,过去需要用数天乃至数周的 任务,在Docker容器的处理下,只需要数秒就能完成。

镜像部署

比如 Docker 镜像;Docker 镜像中包含了运行环境和配置,所以 Docker 可以简化部署多种应用实例工作。比如 Web 应用、后台应用、数据库应用、大数据应用比如 Hadoop 集群、消息队列等等都可以打包成一个镜像部署。

节省开支

一方面,云计算时代到来,使开发者不必为了追求效果而配置高额的硬件,Docker 改变了高性能必然高价格的思维定势。Docker 与云的结合,让云空间得到更充分的利用。不仅解决了硬件管理的问题,也改变了虚拟化的方式。

3.7场景示例

传统开发流程

Traditional development process.png

docker开发流程

docker-development-process.png

3.8docker的版本

安装Docker CE

要安装Docker CE,需要以下64位Ubuntu版本中的一个:

• Bionic 18.04 (LTS)

• Artful 17.10

• Xenial 16.04 (LTS)

• Trusty 14.04 (LTS)

我们选用的是Ubuntu 16.04。Ubuntu 16.04版本无需安装额外的依赖包,可以直接安装。

1.使用管理员账号登录ubuntu 16.04系统,保证该管理员有root权限,或者可以执行sudo命令。

2.打开终端ctrl+alt+t

3.检查curl包有没有安装。

执行which curl

如果curl没有安装的话,更新apt源之后,安装curl包。

sudo apt-get update

sudo apt-get install curl4.获得最新的docker安装包

curl -fsSL https://get.docker.com -o get-docker.sh

然后执行sudo sh get-docker.sh

成功之后会显示如下界面:

5.确认docker是否安装成功

sudo docker run hello-world

这个命令会下载一个测试用的镜像并启动一个容器运行它。

成功之后会显示:

6.添加用户组

sudo usermod -aG docker yumingvvv7.修改配置文件

文件地址:etc/default/docker

使用编辑器修改如下配置

DOCKER_OPTS="-s=aufs –r=true –api-cors-header='*' –H tcp://0.0.0.0:2375 –H unix:///var/run/docker.sock"8.重启docker服务

sudo service docker start重启使配置生效。

安装步骤

Docker EE

3.9Docker的Hello world

docker run ubuntu:15.10 /bin/echo "Hello world"docker: Docker 的二进制执行文件。

run:与前面的 docker 组合来运行一个容器。

ubuntu:15.10指定要运行的镜像,Docker首先从本地主机上查找镜像是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载公共镜像。

/bin/echo "Hello world": 在启动的容器里执行的命令

以上命令完整的意思可以解释为:Docker 以 ubuntu15.10 镜像创建一个新容器,然后在容器里执行 bin/echo "Hello world",然后输出结果。

3.10运行容器里的终端

docker run -i -t ubuntu:15.10 /bin/bash

◆ -t:在新容器内指定一个伪终端或终端。

◆ -i:允许你对容器内的标准输入 (STDIN) 进行交互。

3.11查看所有运行的容器 docker ps3.12查看容器日志 docker logs 填入容器id3.13停止容器 docker stop3.14运行一个web应用

docker pull training/webappdocker容器中运行一个 Python Flask 应用来运行一个web应用。docker run -d -P training/webapp python app.py

参数说明:

-d:让容器在后台运行。

-P:将容器内部使用的网络端口映射到我们使用的主机上。

查看运行的容器docker ps浏览器中输入地址 127.0.0.1:输入查询到的端口号docker inspect 容器的iddocker port 容器的id改变端口:docker run -d -p 5000:5000 training/webapp python app.py查询某个id使用的端口

查询详细信息

-END-

声明:本文为入驻“火星号”作者作品,不代表12bet娱乐 pt88.vip官方立场。转载请注明出处、作者和本文链接
提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。
语音技术由科大讯飞提供

推广
相关新闻

涨幅榜

你可能感兴趣的内容
下一篇

广告作弊行为,你知道几种?反作弊常见方法又有哪些?

寻求报道 寻求融资 APP下载
APP下载 扫描下载APP