如何将dockerfile环境variables传递给node.js文件?

如何将dockerfile环境variables传递给node.js文件? 我跟随docker文档传递ENVvariables,没有任何variables被传递。 对这个问题的任何见解?


dockerfile:

FROM 10.118.224.132:5000/node:8.6.0-wheezy ENV PORT 6000 ENV iamIP2="10.118.225.199" ENV iamPort 9999 ENV iamPort2=9997 RUN apt-get update WORKDIR /usr/src/app COPY package.json /usr/src/app COPY . . ENV mongoDBurl=10.118.225.149:27017/globalIndex CMD ["node", "server.js"] 

server.js:

 "use strict"; const fs = require('fs'); const http = require('http'); const cors = require('cors'); const request = require('request'); const link1 = process.env.PROXY_IAM_URI; const iamIP ="10.118.225.164"; console.log("iamIP: " + iamIP); //const iamIP = /\d+.\d+.\d+.\d+/g.exec(link1)[0]; console.log("iamIP: "+iamIP); //const iamPort = /\d{2,}$/g.exec(link1)[0]; console.log("iamPort "+ iamPort); const iamPort =0; console.log("iamPort "+ iamPort); var iamIP2 ; console.log("iamIP2 "+ iamIP2); var iamPort2 ; console.log("iamPort2 "+ iamPort2); 

console.log(响应):

 [stdout][20d97485] iamIP: 10.118.224.164 [stdout][20d97485] iamPort 0 [stdout][20d97485] iamIP2 undefined [stdout][20d97485] iamPort2 undefined 

你应该可以通过process.env把它们放到Node.js中

 process.env.iamIP2 // "10.118.225.199" process.env.iamPort // 9999 process.env.iamPort2 // 9997 process.env.mongoDBurl // 10.118.225.149:27017/globalIndex