Openshift - 部署时缺少模块 Keystone.JS
Openshift - missing modules when deploying Keystone.JS
我正在尝试安装 keystone.js,但总是出现缺少模块的错误,有人可以帮忙吗?我已经更新了我的 package.json 以包含 cloud-env 依赖项,但仍然没有任何乐趣。很少有关于将 KS 部署到 Openshift 的文档。
Error: Cannot find module 'keystone'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/var/lib/openshift/5501b0c04382ecfefe0000a2/app-root/runtime/repo/web.js:1:78)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
DEBUG: Program node web.js exited with code 8
DEBUG: Starting child process with 'node web.js'
Package.json:
{
"name": "node",
"version": "0.0.0",
"private": true,
"dependencies": {
"cloud-env": "^0.1.0",
"keystone": "latest",
"underscore": "latest"
},
"devDependencies": {
"grunt": "~0.4.4",
"grunt-express-server": "~0.4.17",
"grunt-contrib-jshint": "~0.7.1",
"grunt-contrib-compass": "^1.0.1",
"grunt-contrib-csslint": "^0.3.1",
"grunt-contrib-cssmin": "^0.11.0",
"grunt-contrib-watch": "^0.6.1",
"grunt-cssstats": "^1.0.1",
"grunt-stats": "^0.1.0",
"jshint-stylish": "~0.1.3",
"load-grunt-tasks": "~0.4.0",
"load-grunt-configs": "^0.4.1",
"grunt-node-inspector": "~0.1.5",
"time-grunt": "~0.3.1",
"grunt-concurrent": "~0.5.0",
"grunt-nodemon": "~0.2.1",
"open": "0.0.5"
},
"engines": {
"node": ">=0.10.22",
"npm": ">=1.3.14"
},
"scripts": {
"start": "node web.js"
},
"main": "web.js"
}
这是一个迟到的答案,但今天我遇到了同样的问题,以下对我有用:
rhc ssh <app>
cd $OPENSHIFT_REPO_DIR
npm install
可能是将应用程序推送到 openshift 时出了点问题。这样你就可以手动修复包了。
我运行陷入同样的问题。根据我的研究,关闭 ssh 连接的问题似乎是其他人 运行 在跨各种语言构建小型 openshift 齿轮时遇到的问题(我读到一些观点 它 运行如果您使用 中档 或更高档,则安装正常 )。但是,我未能使用@barney765 的解决方案获得 npm install
来完成:每次 运行 时我都会遇到类似的 "connection closed" 问题。
由于升级到中型齿轮并不是我真正准备做的事情,我的解决方法是 将我的生产 node_modules 提交到 git 所以没有 [=部署到 openshift.
后需要 10=]
同时提交您的 node_modules does have its drawbacks - the openshift documentation appeears to suggest this is as a viable approach (read the "node_modules" heading)。
我正在尝试安装 keystone.js,但总是出现缺少模块的错误,有人可以帮忙吗?我已经更新了我的 package.json 以包含 cloud-env 依赖项,但仍然没有任何乐趣。很少有关于将 KS 部署到 Openshift 的文档。
Error: Cannot find module 'keystone'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/var/lib/openshift/5501b0c04382ecfefe0000a2/app-root/runtime/repo/web.js:1:78)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
DEBUG: Program node web.js exited with code 8
DEBUG: Starting child process with 'node web.js'
Package.json:
{
"name": "node",
"version": "0.0.0",
"private": true,
"dependencies": {
"cloud-env": "^0.1.0",
"keystone": "latest",
"underscore": "latest"
},
"devDependencies": {
"grunt": "~0.4.4",
"grunt-express-server": "~0.4.17",
"grunt-contrib-jshint": "~0.7.1",
"grunt-contrib-compass": "^1.0.1",
"grunt-contrib-csslint": "^0.3.1",
"grunt-contrib-cssmin": "^0.11.0",
"grunt-contrib-watch": "^0.6.1",
"grunt-cssstats": "^1.0.1",
"grunt-stats": "^0.1.0",
"jshint-stylish": "~0.1.3",
"load-grunt-tasks": "~0.4.0",
"load-grunt-configs": "^0.4.1",
"grunt-node-inspector": "~0.1.5",
"time-grunt": "~0.3.1",
"grunt-concurrent": "~0.5.0",
"grunt-nodemon": "~0.2.1",
"open": "0.0.5"
},
"engines": {
"node": ">=0.10.22",
"npm": ">=1.3.14"
},
"scripts": {
"start": "node web.js"
},
"main": "web.js"
}
这是一个迟到的答案,但今天我遇到了同样的问题,以下对我有用:
rhc ssh <app>
cd $OPENSHIFT_REPO_DIR
npm install
可能是将应用程序推送到 openshift 时出了点问题。这样你就可以手动修复包了。
我运行陷入同样的问题。根据我的研究,关闭 ssh 连接的问题似乎是其他人 运行 在跨各种语言构建小型 openshift 齿轮时遇到的问题(我读到一些观点 它 运行如果您使用 中档 或更高档,则安装正常 )。但是,我未能使用@barney765 的解决方案获得 npm install
来完成:每次 运行 时我都会遇到类似的 "connection closed" 问题。
由于升级到中型齿轮并不是我真正准备做的事情,我的解决方法是 将我的生产 node_modules 提交到 git 所以没有 [=部署到 openshift.
后需要 10=]同时提交您的 node_modules does have its drawbacks - the openshift documentation appeears to suggest this is as a viable approach (read the "node_modules" heading)。