我参与了Docker Compose项目,我们利用了.env
文件的可能性。但是,我发现在构造另一个环境变量时不能重用一个环境变量,也不能重用现有的OS级环境变量。
例如,这不起作用:
VIRTUAL_HOST=domain.com
LETSENCRYPT_HOST=${VIRTUAL_HOST}
LETSENCRYPT_EMAIL=contact@${VIRTUAL_HOST}
有什么办法解决吗?
答案 0 :(得分:0)
创建类似于以下内容的输入脚本:
#!/usr/bin/env bash
set -e
# Run a substitution because docker don't support nesting variables
export LETSENCRYPT_HOST=$(echo ${LETSENCRYPT_HOST} | envsubst)
export LETSENCRYPT_EMAIL=$(echo ${LETSENCRYPT_EMAIL} | envsubst)
exec "$@"