尝试设置Azure Devops部署的React应用程序以使用Azure中的环境变量。
运行启动应用程序的命令是
pm2 start server.js
在server.js中,我添加了一些日志记录...
console.log(process.env);
这将转储所有预期的env变量(包括Azure中设置的变量)。
当我尝试在其他地方使用相同的环境变量时,它们是未定义的。我尝试访问环境变量的文件位于打字稿文件中,并且我尝试使用process.env.MY_VAR
访问它们。
答案 0 :(得分:1)
如果在构建或发行版的上下文中运行进程,则该进程有权访问在构建/发行版中定义的环境变量。如果您在其他地方运行它,则不会。因为它是一个不同的环境,所以没有设置这些环境变量。如果要设置这些环境变量,则需要设置它们。
在Azure应用服务中,正确的位置位于应用服务的“应用设置”部分。您可以使用ARM模板来部署应用程序服务并配置应用程序设置,也可以在通过App Service Deploy任务进行部署时直接设置应用程序设置。