【发布时间】:2020-02-08 06:52:21
【问题描述】:
我可以在docker-compose.yml 中指定一个参数,如下所示(例如RAILS_ENV)
version: '3'
services:
web:
build:
context: .
args:
RAILS_ENV: production
Dockerfile 使用这个 ARG 并设置一个ENV 以便我的图像使用该环境变量构建:
FROM ruby:2.5.1
# ...
ARG RAILS_ENV
ENV RAILS_ENV=$RAILS_ENV
# ...
# Image contains environment variable `$RAILS_ENV` as `"production"`
但是,如果我想使用 "production" 的硬编码值以外的值怎么办?
有没有办法将变量动态传递到
docker-compose.yml文件中?另外,我可以在
docker-compose.yml中指定一个默认值(例如development),以防我什么都不传递?
谢谢!
【问题讨论】:
-
是的,是的(带有
.env文件),请参阅docs.docker.com/compose/compose-file/#variable-substitution
标签: docker docker-compose environment-variables