docker-compose
构建和部署的 node.js应用程序看不到任何自定义设置变量。 console.log(process.env.VAR)
记录 undefined 来为其中任何一个控制台。
使用yaml文件中的 env_file 属性设置变量。仅使用 env_file 属性。 Dockerfile中设置了一个 ENV 值,应用程序可以访问它。
docker exec -it <container-id> env
会返回所有自定义值。 docker exec -it <container-id> sh
仅返回在基本映像中设置的那些- node-alpine (由 exec 清除?)。
设置有什么问题?
答案 0 :(得分:1)
我发现问题不是不是,原因是撰写文件或错误使用了 env_file 字段。
问题出在env文件本身。设置值时使用空格。像这样:VAR = VAL
而不是VAR=VAL
。
尽管 dotenv npm软件包允许这样做(我使用了一个项目随附的示例作为部署的基础),但docker和environment却没有。