在项目中,往往需要在 docker-compose.yml 文件中使用环境变量来控制不同的条件和使用场景。本文集中介绍 docker compose 引用环境变量的方式。
说明:本文的演示环境为 ubuntu 16.04。
Compose CLI 与环境变量
Compose CLI(compose command-line 即 docker-compose 程序)能够识别名称为 COMPOSE_PROJECT_NAME 和 COMPOSE_FILE 等环境变量(具体支持的环境变量请参考这里)。比如我们可以通过这两个环境变量为 docker-compose 指定 project 的名称和配置文件:
$ export COMPOSE_PROJECT_NAME=TestVar $ export COMPOSE_FILE=~/projects/composecounter/docker-compose.yml

然后启动应用,显示的 project 名称都是我们在环境变量中指定的:

如果设置了环境变量的同时又指定了命令行选项,那么会应用命令行选项的设置:
$ docker-compose -p nickproject up -d

在 compose file 中引用环境变量
我们还可以在 compose file 中直接引用环境变量,比如下面的 demo:

version: '3'
services:
web:
image: ${IMAGETAG}
ports:
- "5000:5000"
redis:
image: "redis:alpine"

本文详细介绍了如何在 Docker Compose 中引用和管理环境变量,包括通过环境变量控制配置、在 compose file 中引用、传递给容器、使用.env 文件设置默认值以及配置不同场景下的环境变量。实例演示了环境变量的设置方法和优先级,帮助开发者更好地理解和应用 Docker Compose 的环境变量功能。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



