Compose文件是用来定义和配置Docker容器应用程序的文本文件。它使用YAML(或JSON)格式,指定了容器的各种属性,如镜像、端口映射、环境变量、数据卷等。
Compose文件有以下几个要求:
- 文件名必须为
docker-compose.yml
或者docker-compose.yaml
。 - 文件必须使用正确的YAML(或JSON)语法,包括正确的缩进、冒号和逗号等。
- 文件可以包含多个服务定义,每个服务使用一个独立的块进行描述。
- 每个服务块中需要指定至少一个
image
,用于指定容器使用的镜像。 - 可以使用其他指令如
build
、volumes
、ports
等来配置容器。
下面是一个简单的Compose文件示例:
version: '3.8'
services:
web:
image: nginx:latest
ports:
- 8080:80
volumes:
- ./html:/usr/share/nginx/html
environment:
- ENV=development
这个示例中定义了一个名为web
的服务,使用了最新版的nginx镜像,将主机的8080端口映射到容器的80端口,将主机的./html
目录挂载到容器的/usr/share/nginx/html
目录,还设置了一个名为ENV
的环境变量,并将其值设为development
。