Docker compose双美元符号:我可以从内部引用环境变量吗?

Docker compose双美元符号:我可以从内部引用环境变量吗?,docker,docker-compose,Docker,Docker Compose,我试图避免docker compose环境插值,但我希望入口点引用传递给容器的环境变量 以这项服务为例: whatever: image: whatever entrypoint: echo "$$MNEMONIC" env_file: - etc/env_whatever 在我的etc/env_中,我有一个环境变量定义为助记符=blabla 当我运行服务时,我得到的是这样的,字面上:$MNEMONIC。我想打印通过env_文件传递的实际助记符值,因此我应该

我试图避免docker compose环境插值,但我希望入口点引用传递给容器的环境变量

以这项服务为例:

whatever:
    image: whatever
    entrypoint: echo "$$MNEMONIC"
    env_file:
      - etc/env_whatever
在我的etc/env_中,我有一个环境变量定义为助记符=blabla

当我运行服务时,我得到的是这样的,字面上:
$MNEMONIC
。我想打印通过env_文件传递的实际助记符值,因此我应该得到
blablabla


我正为此苦苦挣扎,因为我得到的所有搜索都与避开美元符号和其他问题有关。我想我可以通过制作一个定制的Dockerfile来解决这个问题,但我也在努力避免这种情况。我是在问一个不可能的问题吗?

您好,尝试创建与您的
docker compose.yml相同级别的
.env
文件。把
env_which
的内容放在那里,不带美元。并检查它是否有效-嗨@404pio!谢谢你的回复。据我所知,这相当于使用环境插值/替换,我正试图避免这种情况:docker compose将从主机获取环境,然后直接替换入口点中的值。如果我找不到任何其他解决方案,我无论如何都会采用这种方法:)再次你好-检查这个问题:再次你好@404pio,这正是我尝试过的方法,没有结果。我的问题与解决方案的一条注释中描述的相同:
这对我不起作用。当我使用$${VAR_NAME}时,返回该VAR时的值是$VAR_NAME–Minh Danh Aug 24'18 4:53