多阶段Docker构建reactjs_nginx的第一阶段未采用环境变量

rmbxnbpk  于 2023-01-20  发布在  Nginx
关注(0)|答案(1)|浏览(145)

我使用docker compose作为Django + Nginx + Reactjs_Nginx的堆栈。Django和Nginx成功地从.env文件中获取环境变量。但Reactjs_Nginx没有。
我尝试在本地为ReactJs和行bellow可以采取环境变量。即使运行npm run buildnpx serve -s它仍然工作。

const hostName = process.env.REACT_APP_BACKEND_HOST || "http://localhost:8000/";

运行docker-compose up --build之后,我附加了reactjs_nginx容器的shell,并运行printenv进行检查,仍然可以看到所需的环境变量。
为什么builder阶段不接受环境变量?
x一个一个一个一个x一个一个二个x

jtw3ybtb

jtw3ybtb1#

环境变量只在运行时可用,在构建映像时不可用。
为此,您必须使用构建参数:https://docs.docker.com/compose/compose-file/compose-file-v3/#args

相关问题