一个大型的Docker组成的微服务应用中,容器的数量是非常庞大的,如果依赖传统的人工配置方式进行维护,对于开发和运维来说简直就是噩梦。Compose的出现正是为了解决这个问题。
Compose简介
Compose的前身是Fig,Fig被Docker收购之后正式更名为Compose,Compose向下兼容Fig。Compose是一个用于定义和运行多容器Docker应用的工具,只需要一个Compose的配置文件和一个简单的命令就可以创建并运行应用所需的所有容器。在配置文件中,所有容器通过
services来定义,并使用
docker-compose命令启动或停止容器以及所有依赖容器。安装Compose
Compose的安装方式有多种,这里推荐使用
curl命令安装,在安装之前,要确保你的机器上已经安装了Docker,可以运行
sudo docker version命令来确认是否已安装了Docker。截至目前,Compose的最新发布版为
1.11.2,下面演示在一台已经安装好Docker的Linux主机上安装Compose。安装很简单,只需要执行下面的命令即可:
sudo curl -L “https://github.com/docker/compose/releases/download/1.11.2/docker-compose-$(uname -s)-$(uname -m)” -o /usr/local/bin/docker-compose
等待安装完毕后,执行下面的命令,为
docker-compose添加可执行权限:
chmod +x /usr/local/bin/docker-compose输入
docker-compose --version命令可以查看安装结果。除了这种安装方式之外,还可以通过Python的pip命令安装或将Compose安装成Docker容器,详情请参见https://docs.docker.com/compose/install/#install-as-a-container。
如果要卸载Compose,可以执行
sudo rm /usr/local/bin/docker-compose命令。Compose入门
下面我们通过一个简单的例子演示Compose的使用步骤,使用Python构建一个Web应用,该应用使用Flask框架,并在Redis中维护一个命中计数(即使你不熟悉Python也没有关系,你甚至不需要安装Python和Redis,我们会从容器中获取这些依赖环境)。
创建工程
首先需要一个文件夹作为项目文件夹:
mkdir composetest
cd composetest在项目文件夹下创建一个
app.py的文件,并将下面的代码拷贝并粘贴到该文件中:
from flask import Flask
from redis import Redisapp = Flask(__name__)










