四、Docker-Compose 安装
Compose 定位是“定义和运行多个Docker容器的应用”。由Python编写,实际调用Docker服务提供的API对容器进行管理。前身是开源项目Fig。
使用一个Dockerfile模板文件,可以让用户很方便地定义一个单独的应用容器。
而处理多个容器相互配合来完成某项任务的情况,就需要使用Compose了。
Compose它允许用户通过一个单独的docker-compose.yml模板文件(YAML格式)来定义一组相关联的应用容器为一个服务栈( 项目)。
几个概念:
任务:一个容器被称为一个任务。任务拥有独一无二的 ID,在同一个服务中的多个任务序号依次递增
服务:某个相同应用镜像的容器副本集合,一个服务可以横向扩展为多个容器实例
服务栈:由多个服务组成 ,相互配合完成特定业务 Web 应用服务、数据库服务共同构成 Web 服务钱 ,一般由一个 docker-cornpose.yml 文件定义
Compose 默认管理对象是服务栈,通过子命令对栈中的多个服务进行便捷的生命周期管理。
安装和卸载
安装:
1、Python的pip工具安装
是将 Compose 当作一个 Python 应用从 PyPI 源中安装。
yum -y install epel-release
yum -y install python-pip
pip install --upgrade pip
sudo pip install -U docker-compose
安装成功后,可以查看 docker compose 命令的基本用法。
可以添加 bash 补全命令:
curl -L https://raw.githubusercontent.com/docker/compose/1.24.0/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
2、二进制包
官方编译好的二进制包 https://github.com/docker/compose/releases
将这些 进制文件下载后直接放到执行路径下,并添加执行权限即可
curl -L https://github.com/docker/compose/releases/download/1.24.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
可以使用 docker compose version 命令来查看版本信息
3、容器中执行
Compose既然是一个Python应用,自然也可以直接用容器来执行它。
curl -L https://github.com/docker/compose/releases/download/1.24.0/run.sh /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
它其实是下载了 docker /compo se 镜像井运行
前两种方式是传统方式, 适合本地环境下安装使用;后一种方式则不破坏系统环境,更适合云计算场景。
卸载:
如果是二进制包安装,直接删除二进制文件:
$ sudo rm /usr/local/bin/docker-compose
如果是通过 Python pip 工具安装的:
$ sudo pip uninstall docker compose