OpenShift 无法处理某些 Nodejs 依赖项 (Koa)

2024-02-20

我已经结账了如何在 Openshift 中设置 KoaJS https://stackoverflow.com/questions/26924967/how-to-setup-koajs-in-openshift但它仍然不起作用。

这是我的一部分package.json file:

  "engines": {
    "node": ">= 0.12.0",
    "npm": ">= 1.0.0"
  },

  "dependencies": {
    "co-busboy": "^1.3.0",
    "forever": "^0.14.1",
    "fs": "0.0.2",
    "koa": "^0.18.1",
    "koa-logger": "^1.2.2",
    "koa-router": "^4.2.0",
    "koa-static": "^1.4.9",
    "path": "^0.11.14"
    },
  "devDependencies": {},
  "bundleDependencies": [], 
  "private": true,
  "main": "--harmony app.js"

然后到我的app.js file.

这段代码的工作原理:

var http = require('http');
//var koa = require('koa');
//var app = koa();

var ip = process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1',
    port = process.env.OPENSHIFT_NODEJS_PORT || '8080';

http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(port, ip);
console.log('Server running at http://'+ip+':'+port+'/');

这不起作用:

var http = require('http');
var koa = require('koa');
var app = koa();

var ip = process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1',
    port = process.env.OPENSHIFT_NODEJS_PORT || '8080';

http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(port, ip);
console.log('Server running at http://'+ip+':'+port+'/');

正如您所看到的,唯一的区别是我取消了两行注释。

Error:

Service Temporarily Unavailable

The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.

Apache/2.2.15 (Red Hat) Server at fela-basickarl.rhcloud.com Port 80

OpenShift 上的错误日志指出:

...
.../app-root/runtime/repo/node_modules/koa/lib/application.js:179
function *respond(next) {
         ^
SyntaxError: Unexpected token *
...

真是个大麻烦。

console.log(process.versions);显示我正在使用节点0.10.25,尽管我在package.json我想用的>= 0.12.0:

{ http_parser: '2.0',
  node: '0.10.25',
  v8: '3.14.5.10',
  ares: '1.9.1',
  uv: '0.10.23',
  zlib: '1.2.3',
  modules: '11',
  openssl: '1.0.0-fips' }

是什么导致 OpenShift 不使用 0.12.2?


快速部署0.12

https://hub.openshift.com/quickstarts/128-node-js-0-12 https://hub.openshift.com/quickstarts/128-node-js-0-12

对于希望部署 Node js 的人0.12使用上面的链接,有一个按钮Deploy.

0.12.2

部署特定版本0.12.2复制目录.openshift from https://github.com/ryanj/nodejs-custom-version-openshift并覆盖您当前的项目.openshift目录(我假设您正在使用创建应用程序时创建的 OpenShifts git)。

导航至your-project/.openshift/markers/并打开文件NODEJS_VERSION并添加0.12.2在底部。我的文件如下所示:

#  Uncomment one of the version lines to select the node version to use.
#  The last "non-blank" version line is the one picked up by the code in
#  .openshift/lib/utils
#  Default: 0.10.25
#
#  0.8.24
#  0.9.1
#  0.10.25
#  0.11.11
#  0.10.25
0.12.2

然后通过 git 将项目上传到 OpenShift(位于项目根目录中)。

git add -A .
git commit -a -m "replaced .openshift directory"
git push

——和谐旗帜?

如中所述Node.js 0.12 中提供的 ECMAScript 6 功能 https://stackoverflow.com/questions/28388885/ecmascript-6-features-available-in-node-js-0-12--harmony 标志对于某些功能仍然需要。

这意味着将其添加到您的package.json file,看看我的问题看看例子。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OpenShift 无法处理某些 Nodejs 依赖项 (Koa) 的相关文章

随机推荐

  • 黑莓 - 如何调整图像大小?

    我想知道我们是否可以调整图像大小 假设我们要在黑莓屏幕上绘制一张实际尺寸为 200x200 尺寸为 100 x 100 的图像 Thanks 您可以非常简单地使用以下命令来完成此操作EncodedImage scaleImage32 htt
  • 如何在 MySQL 中循环使用数组?

    我想创建一个存储过程或普通查询 其中的值通过数组传递 Example CREATE PROCEDURE proc BEGIN DECLARE cont INTEGER DECLARE var ARRAY SET cont 0 SET var
  • 自动重新调整整个存储库的基础以重组和应用 Prettier

    我想清理一个具有一年提交量 总共大约 4000 次 的存储库的历史记录 一位贡献者一直不同意格式化标准 并多次更改 Prettier 配置文件 或者根本不使用 Prettier 结果 git 的历史就像一场外观变化的拉锯战 差异巨大 而真正
  • 如何编译具有 ML 兼容性的 F# 代码?

    以下 F 片段似乎仅在 ML 兼容模式下编译才有效 运行它here http rextester com MVY61204 let i 1 lxor 5 但是 我无法在 Visual Studio 2012 中的简单项目中编译它 也无法从命
  • 如何在 Kubernetes 上使用 Spark 修复“禁止!配置的服务帐户无权访问”?

    我正在尝试运行以下基本示例使用 k8s 集群提交 Spark 应用程序 https spark apache org docs latest running on kubernetes html submitting application
  • .NET Core IServiceScopeFactory.CreateScope() 与 IServiceProvider.CreateScope() 扩展

    我的理解是 当使用内置的依赖注入时 NET Core 控制台应用程序将要求您自己创建和管理所有范围 而 ASP NET Core 应用程序将创建和管理HttpRequest默认情况下通过定义的中间件作用域 使用 ASP NET Core 您
  • Tomcat 中的会话管理

    我开发了一个简单的 Web 应用程序 其中包含 2 个 servlet A 和 B 我对 Tomcat 的网络应用程序的会话管理有一些疑问 注意 在访问网络应用程序时 我在网络浏览器 Chrome 中禁用了 cookie 1 当第一次访问
  • 更改 WordPress 图像 URL

    在我的 WordPress 网站上 我的所有图像都显示为损坏的链接 它们还在 WordPress 后端的媒体库中显示为损坏的链接 我使用 Google Chrome 检查了这些图像 发现它们都像这样显示 img src http firou
  • 平台 pinvoke 教程 msdn

    以下是来自的教程msdn http msdn microsoft com en us library aa288468 28v vs 71 29 aspx 在教程中 flushall 的输出是 Test 但我通过使用 console wri
  • 仅包含与递归差异中给定模式匹配的文件

    如何对两个目录 a 和 b 中的文件执行递归比较 diff r a b 但只查看名称与给定模式匹配的文件 例如 使用 find 命令中可用的相同语法 如下所示 diff r a b name crazy 这将显示 a 和 b 中具有相同名称
  • 在 Rails 中的视图之间传递变量

    我一直在试图弄清楚如何在两个视图之间传递变量 并且我已经查看了堆栈溢出的所有示例 但似乎无法使其工作 我的用户中有这个 gt index html erb tr td td td td td td td td td td td td tr
  • 如何等待异步委托

    在 MVA 视频之一中 我看到了下一个构造 static void Main string args Action testAction async gt Console WriteLine In await Task Delay 100
  • 使用多字符分隔符分割字符串

    假设我有以下字符串 Hello there My name is Fred I am 25 5 years old 我想把它分成句子 这样我就有了以下列表 Hello there My name is Fred I am 25 5 year
  • Gitlab 部署脚本 - envsubst:找不到命令

    我有一个带有 CI CD 管道的 gitlab 存储库 它有deploy sh脚本 该脚本可以顺利运行 直到envsubst命令 bin bash set e lt gt deploy via ssh SSH ssh o UserKnown
  • 在 xml 内的图像上绘制视图

    你能帮助我分享你关于如何在android中的图像顶部绘制一个小矩形的知识吗 我有 main xml 和一些小部件 在顶部 有一个图像 我想在该图像上绘制一个矩形 并在应用程序运行时显示这两个矩形 我的 xml 文件如下所示
  • 验证 Rails 中多对多关联的唯一性

    说我有Project 即与多对多关联Tag 我在用着有 许多通过所以我有单独的连接模型 如何创建验证来检查连接模型的唯一性 现在我只有 has many tags through gt taggings uniq gt true 但这并不在
  • MVC 应用程序调试时出错:视图状态 MAC 验证失败

    现在开始表单 第一次 当我开始调试 MVC 应用程序时 我收到此错误 视图状态 MAC 验证失败 如果 该应用程序由 Web 托管 农场或集群 确保 配置指定 相同的validationKey和validation 算法 无法使用自动生成
  • 如何使用 NHibernate 高效地进行 TDD?

    在我看来 大多数人在使用 NHibernate 时都会针对内存中 进程内数据库 例如 SQLite 编写测试 我已经启动并运行了它 但我的第一个测试 使用 NHibernate 总是需要 3 4 秒才能执行 下一个测试运行得更快 我使用 F
  • 是否有 gist.github.com 的内部替代方案可以在防火墙后面运行?

    gist github com 非常方便 但我希望能够运行类似的东西来与我工作的防火墙后面的其他开发人员在内部共享代码示例 因此我不需要一直清理我的代码 只讲代码示例 有这样的事情存在吗 我并不追求大型项目管理工具 只是一种制作一次性要点并
  • OpenShift 无法处理某些 Nodejs 依赖项 (Koa)

    我已经结账了如何在 Openshift 中设置 KoaJS https stackoverflow com questions 26924967 how to setup koajs in openshift但它仍然不起作用 这是我的一部分