docker-compose是docker 的编排工具
Compose 文件是一个YAML文件,用于定义services、netword和volumes。 Compose 文件的默认路径为./docker-compose.yml(后缀为.yml和.yaml都可以)。
一个service配置将会应用到容器的启动中,很像将命令行参数传递给docker run。 同样,network和volume定义类似于docker network create和docker volume create。 与Docker运行一样,默认情况下尊重Dockerfile中指定的选项(例如CMD,EXPOSE,VOLUME,ENV) - 您不需要在docker-compose.yml中再次指定它们。
安装docker-compose:
curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
下载完成后,执行文件保存在/usr/local/bin下,需要添加执行方式
chmod +x /usr/local/bin/docker-compose
然后可以验证下安装的版本:
[root@vm-10-122-66-106 pano]# docker-compose --version
docker-compose version 1.24.0, build 0aa59064
这样就可以使用了
docker-compose使用的yaml文件来编译,启动容器,通过一个简单的例子来说下,用法
version: '2'
services:
web:
build: .
depends_on:
- db
- redis
redis:
image: redis
db:
image: postgres
-version: 其实是指定的docker-compose的version
-serveices: 制定的是应用的名称,这里是web
-depends_on: web 应用启动 依赖的其他应用,包括redis和postgres
-build: 指定的是镜像需要的Dockerfile的位置
-image 指定的容器所需镜像,这里可以通过指定镜像的仓库
另外,一般来讲我们生成的镜像都需要打标签,可以通过image 参数来指定
image: "pano:1.4.9"
其他还有比的很多参数,需要的话可以参考
[https://deepzz.com/post/docker-compose-file.html#toc_57]
这篇文章 很详细