代码之家  ›  专栏  ›  技术社区  ›  user4092086

如何在openshift上部署节点应用程序并运行它?

  •  0
  • user4092086  · 技术社区  · 6 年前

    刚刚使用node创建了一个非常简单的hello world应用程序:

    var express = require('express');
    var app = express();
    app.get('/', function (req, res) {
      res.send('Hello World!');
    });
    var server_port = process.env.OPENSHIFT_NODEJS_PORT || 8080
    var server_ip_address = process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1'
    
    app.listen(server_port, server_ip_address, function () {
      console.log( "Listening on " + server_ip_address + ", port " + server_port )
    });
    

    它在我的本地机器中工作正常,

    将其放在github上,并部署在openshift上,创建了pod,服务器运行良好: enter image description here 但当我浏览时 the route 我可以在应用程序中找到它>&燃气轮机;路线菜单上写着:

    Application is not available
    
    The application is currently not serving requests at this endpoint. It may not have been started or is still starting.
    I guess I'm using the latest version of openshift since just created an account.
    

    我希望它能向我展示你好的世界!

    更新1:

    这是我的包裹。json:

    {
      "name": "npmtest",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "start": "node index.js"
      },
      "author": "",
      "license": "ISC",
      "dependencies": {
        "express": "^4.16.2"
      }
    }
    
    2 回复  |  直到 6 年前
        1
  •  1
  •   Will Gordon    6 年前

    您的应用服务器IP地址需要 0.0.0.0 . 因此,您要么为此指定环境变量,要么对其进行硬编码。

        2
  •  0
  •   harsh zalavadiya    6 年前

    您是否在包中配置了主文件。json

    也许您需要从openshift示例的环境变量检查下面的链接中动态获取端口

    https://github.com/openshift/nodejs-ex