Docker Compose是一个用于定义和运行多个docker容器应用的工具。使用Compose你可以用YAML文件来配置你的应用服务,然后使用一个命令,你就可以部署你配置的所有服务了。
安装 下载Docker Compose:
curl -L https://get.daocloud.io/docker/compose/releases/download/1.24.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose修改该文件的权限为可执行:
chmod +x /usr/local/bin/docker-compose/查看是否已经安装成功:
docker-compose version如果出现docker-compose 没有找到命令 docker-compose not found、docker-compose命令不存在
centos 7中python-pip模块不存在,是因为像centos这类衍生的发行版,源跟新滞后,或者不存在。即使使用yum去search python-pip也找不到软件包。
为了使用安装滞后或源中不存在的安装包,需要安装扩展源EPEL。扩展源EPEL(http://fedoraproject.org/wiki/EPEL) 是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。
安装扩展源:sudo yum -y install epel-release
安装python-pip模块:sudo yum install python-pip
执行./docker-compose up -d
[root@fd240 bin]# ./docker-compose
Cannot open self /usr/local/bin/docker-compose or archive /usr/local/bin/docker-compose.pkg
解决办法:
进入下面的网址下载目前的最新版:
https://github.com/docker/compose/releases/tag/1.14.0-rc2
网页拉到最下面,下载:
docker-compose-Linux-x86_64
然后将文件上传到 /usr/local/bin/ 文件夹下,然后将其重命名为docker-compose,修改此文件的权限,增加可执行:chmod +x /usr/local/bin/docker-compose
然后再运行
[root@fd240 bin]# docker-compose version
docker-compose version 1.14.0-rc2, build 24dae73
docker-py version: 2.3.0
CPython version: 2.7.13
OpenSSL version: OpenSSL 1.0.1t 3 May 2016
可以看到已经没有问题了。
使用Dockerfile定义应用程序环境,一般需要修改初始镜像行为时才需要使用;
使用docker-compose.yml定义需要部署的应用程序服务,以便执行脚本一次性部署;
使用docker-compose up命令将所有应用服务一次性部署起来。
指定运行的镜像名称
运行的是mysql5.7的镜像 image :mysql :5.7Docker Compose将所管理的容器分为三层,工程、服务及容器。docker-compose.yml中定义所有服务组成了一个工程,services节点下即为服务,服务之下为容器。容器与容器直之间可以以服务名称为域名进行访问,比如在mall-tiny-docker-compose服务中可以通过jdbc:mysql://db:3306这个地址来访问db这个mysql服务。