当前位置:   article > 正文

03_docker-compose环境变量说明_docker-compose env_file

docker-compose env_file

docker-compose 环境变量说明

目录

docker-compose 环境变量说明

一、环境变量说明

二、环境变量使用


一、环境变量说明

 

docker-compose的Yml文件可以使用一些环境配置进行动态配置,减少docker-compose.yml配置文件在不同环境下修改,以下为具体的使用方法

 

二、环境变量使用

 

1、基本使用

  1. web:
  2. image: "webapp:${TAG}"

2、使用.evn配置文件

如果有多个环境变量,则可以通过将它们添加到名为的默认环境变量文件中.env或使用--env-file命令行选项提供环境变量文件的路径来替换它们,.env文件默认为与docker-compose.yml文件在同一目录

 

  1. $ cat .env
  2. TAG=v1.5
  3. $ cat docker-compose.yml
  4. version: '3'
  5. services:
  6. web:
  7. image: "webapp:${TAG}"

运行时docker-compose up,web上面定义的服务将使用该映像webapp:v1.5。可以使用config命令验证这一点,该命令会将解析的应用程序配置输出到终端:

 

  1. $ docker-compose config
  2. version: '3'
  3. services:
  4. web:
  5. image: 'webapp:v1.5'

 Shell中的值优先于.env文件中指定的值。

如果TAG在Shell程序中设置为其他值,则Shell中的值替换image 将使用该值:

  1. $ export TAG=v2.0
  2. $ docker-compose config
  3. version: '3'
  4. services:
  5. web:
  6. image: 'webapp:v2.0'

可以使用命令行参数覆盖环境文件路径--env-file

 

3、使用--env-file选项

通过将文件作为参数,你可以存储在任何地方,并适当命名,例如.env.ci,.env.dev,.env.prod。使用以下--env-file选项完成文件路径的传递:

docker-compose --env-file ./config/.env.dev up 

4、指定不同的配置文件

  1. web:
  2. env_file:
  3. - web-variables.env

 5、使用docker run 传递环境变量

  1. # docker-compose run -e 参数1 参数2 参数3
  2. docker-compose run -e DEBUG web python console.py

6、使用多环境变量

  1. $ cat ./Docker/api/api.env
  2. NODE_ENV=test
  3. $ cat docker-compose.yml
  4. version: '3'
  5. services:
  6. api:
  7. image: 'node:6-alpine'
  8. env_file:
  9. - ./Docker/api/api.env
  10. environment:
  11. - NODE_ENV=production

 可以配置:dev、test、production等环境配置

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/74329
推荐阅读
相关标签
  

闽ICP备14008679号