Docker解析及轻量级PaaS平台演练(四)--Fig相关介绍

本篇中将会使用开源工具Fig

Fig是什么?

简单的说就是对Docker的封装,从而方便我们构建应用的运行环境

它所做的事情是协调Docker上的各个Container之间的联系,并通过服务发现的方式将它们有机的组合成一个完整的系统

Fig使用Docker自带的link来实现服务发现,Fig会负责管理link的相关信息

Fig通过读取当前目录下的fig.yml文件来创建应用的运行环境

在fig.yml中需要定义不同的service

在Fig中service的概念:

标识的是一个个独立的组件,例如,Web应用,MySql等都可以定义为一个独立的service,并且service是可以横向扩展的

我们可以在service中直接指定image,也可以通过build配置项来运行时创建image

所有的service会被运行为Docker上的一个或多个Container

下图是一个fig.yml文件的内容

Docker解析及轻量级PaaS平台演练(四)--Fig相关介绍

该fig.yml定义了两个service,分别是web和redis,在web中使用links将redis引用

build:. 表示在当前目录下进行build,要保证当前目录下有Dockerfile文件存在

在当前目录下使用fig up命令会根据当前的fig.yml文件来启动Container,并根据links配置信息将各个Container连接在一起

可以通过fig up {service name}来启动指定的service定义的Container

如果在当前目录下重复执行fig up执行,每次都会将原来的Container删除然后重新创建,可以通过–no-recreate参数来解决

fig ps的作用相当于docker ps

使用fig scale service=num的方式来扩展指定service的Container个数,如:fig scale web=10

将会创建10个web service对应的Container

未完待续…

上一篇:28个Unix/Linux的命令行神器


下一篇:[转] Android自动化测试之使用java调用monkeyrunner(五)