我遇到了同样的问题。我的解决方案是在docker-compose.yml内部提供变量,因为yml支持使用环境变量。
我认为这对我来说是最有效的方式,因为我不喜欢在命令行中使用类似以下内容一遍又一遍地键入它
docker run -e myuser=$USER . ..
ENV myuser=$USER在容器中,声明将无效,
$myuser将设置为
null。
因此,您的docker-compose.yml可能看起来像这样:
version: '3'services: app: build: context: . dockerfile: Dockerfile environment: - "myuser=${USER}"并可以使用short命令运行
docker-compose up
要检查是否已应用变量,请运行
docker exec -it container-name printenv以列出容器中的所有变量。



