[英]Why isn't my node app logging to the terminal or the Chrome console?
[英]Why isn't my LoopBack/Node app getting environment variables on a toolchain deploy in Bluemix?
我試圖通過Bluemix上的工具鏈部署我的LoopBack / Node.js應用程序。 我正在嘗試在我的datasources.production.js
文件中使用VCAP_SERVICES
。 我的問題似乎與部署期間無法訪問任何環境變量有關。
我可以在部署期間的日志輸出中看到已設置NODE_ENV,但是LoopBack加載了我的datasources.local.js
文件,而不是生產文件。 而且我的console.log中的NODE_ENV表示未定義。 我的任何JSON.parse(process.env.VCAP_SERVICES)
console.log都將生成{}
。
我還可以在Bluemix UI中看到我的應用程序綁定了VCAP_SERVICES。
我一直在修改此提交,但是您可以在此處看到我要執行的操作,包括console.log調用。 https://github.com/StrongLoop-Evangelists/band-app/commit/95640d3ffc7cd9e7553062f7a1b8c66ef0fc2815
這是相關的console.log輸出:
2017-05-08T15:38:22.67+0000 [APP/0] OUT ---datasources.local.js---
2017-05-08T15:38:22.67+0000 [APP/0] OUT ---env.js---
2017-05-08T15:38:22.67+0000 [APP/0] OUT in VCAP if check
2017-05-08T15:38:22.67+0000 [APP/0] OUT VCAP: {}
2017-05-08T15:38:22.67+0000 [APP/0] ERR console.log('NODE_ENV: ', NODE_ENV);
2017-05-08T15:38:22.67+0000 [APP/0] ERR ^
2017-05-08T15:38:22.67+0000 [APP/0] ERR ReferenceError: NODE_ENV is not defined
Joe:如果您將交付管道用作Bluemix中的工具鏈的一部分來部署雲鑄造應用程序,那么您需要了解一點。
在舞台上設置“環境屬性”不會自動將其傳遞給cf應用程序。 它僅使它們可用於進行部署的管道。 要同時在cf應用中設置這些設置,您需要執行cf set-env。 例如:
cf set-env myApp $MY_ENV_VAR
我的問題與manifest.yml
有關。
這讓我失望了:
---
applications:
- name: Band-App
memory: 256M
- services:
- bandapp-cloudantdb
這工作:
name: Band-App
memory: 256M
services:
- bandapp-cloudantdb
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.