Docker Compose 文件中的变量可以用于定义和引用环境变量、文件路径、网络配置等参数。以下是一些常见的 Docker Compose 变量:
- ${VAR}: 引用一个已经存在的环境变量 VAR。
- ${VAR:-default}: 如果 VAR 未设置,则使用默认值 default。
- ${VAR:=default}: 如果 VAR 未设置,则将其设置为默认值 default。
- ${VAR:+alternate}: 如果 VAR 已经设置,则使用 alternate,否则不使用任何值。
- ${HOSTNAME}: 当前容器主机名。
- ${PWD}: 当前工作目录。
- ${COMPOSE_PROJECT_NAME}: Compose 项目名称,默认为当前目录名。
在 Docker Compose 文件中,可以通过 $符号来引用这些变量。例如:
services:
web:
image: nginx
environment:
- MY_ENV=${MY_ENV}
volumes:
- ${PWD}/config:/etc/nginx/conf.d
上述代码中,\({MY_ENV} 和 \){PWD} 变量分别被用于定义环境变量和挂载卷路径。