2016-04-28 48 views
-1

我正在將neo4j 2.3.3應用程序推向cloudfoundry。 我有neo4j服務器和neo4j運行雲,也運行在我的本地。 由於數據集位於neo4j服務器內部。 Neo4j瀏覽器是node js應用程序,它在命令「grunt server」 上啓動,但瀏覽器在http://localhost:9000啓動。 如何使nodejs應用程序(neo4j瀏覽器)監聽9000.我知道process_env。但是如何在這裏實現它。 Neo4j瀏覽器有一個加載http協議,主機和端口的js文件(connect.js)。 我需要一些指導,在這裏進行修改。 我以前曾將VCAP_SERVICES閱讀爲java代碼。 1.如何將端口9000添加到雲代工。 2.如何從雲代工到jd文件中讀取端口env變量。 或 有沒有其他解決方法。 ?cloudfoundry中的Neo4j。

回答

0

這是一個節點js應用程序。 在本地:主機名是127.0.0.1 端口9000 服務器運行 Neo4j的瀏覽器是使用「咕嚕服務器」節點JS應用程序啓動 有日誌中沒有錯誤。 但我如何啓動瀏覽器。我得到502錯誤的網關錯誤。 本地主機:127.0.0.1那麼雲代工廠的主機地址是什麼。 我也嘗試0.0.0.0

https://docs.cloudfoundry.org/buildpacks/node/node-tips.html

-------------- 
var vcapport = process.env.VCAP_APP_PORT || 3000; 
        var vcaphost = process.env.VCAP_APP_HOST || '0.0.0.0'; 
      server 
      .listen(vcapport, vcaphost) 
      .on('listening', function() { 
       var address = server.address(); 
       //var hostname = options.hostname || '0.0.0.0'; 
          var hostname = vcaphost; 
       var targetHostname = 'browser.cfappstpanpz2.ebiz.verizon.com'; 

       var target = options.protocol + "://" + vcaphost +":" + vcapport; 
          //var target = 'http://browser.cfapps.io/'; 

       grunt.log.writeln('Started connect web server on ' + target); 
       grunt.config.set('connect.' + taskTarget + '.options.hostname', hostname); 

       grunt.config.set('connect.' + taskTarget + '.options.port', address.port); 
        grunt.log.writeln('server.address ' + address); 
          grunt.log.writeln('address.port ' + address.port); 
          grunt.log.writeln('hostname ' + hostname); 
          grunt.log.writeln('vcapport ' + vcapport); 
          grunt.log.writeln('vcaphost ' + vcaphos); 

       grunt.event.emit('connect.' + taskTarget + '.listening', hostname, address.port);