簡體   English   中英

在openshift上設置和配置mean.js應用程序部署

[英]setting up and configuring mean.js app deployment on openshift

我有一個MEAN.js應用程序,已將其部署到openshift服務器,並執行以下步驟:

1-按照本教程openshift教程結果設置客戶端工具rhc,git等。通過rhc ssh成功驗證到我的openshift域

2-使用openshift提供的盒帶通過Node.js在openshift上通過Web控制台創建了一個新應用程序

3-通過openshift Web控制台為應用程序添加了mongodb磁帶

4-現在我做了一個手動安裝Bower的步驟,以避免在終端上使用rhc ssh命令通過git提交和推送庫,我在控制台上發布了npm install -g bower,它似乎工作正常,bower安裝成功

5-按照安裝指南的指導從github下載了nodejs應用程序,現在我將應用程序的文件夾結構部署在本地服務器上

6-我需要在app文件夾中包含以下內容,才能成功將我的應用程序部署到服務器

package.json文件中的a- npm依賴項b- bower.json文件(稍后我應該能夠運行bower install在回購中安裝bower依賴項)不成功,我對該目錄沒有sudo權限

c-運行我的項目所需的所有文件和文件夾結構d-代碼行,將服務器設置為使用綁定了mongoose.js,express.js,passport的配置文件運行並在端口3000上監聽的配置文件我將代碼包含在現有的app.js文件中,該文件已經將節點服務器設置為運行`

    var mongoose = require('./config/mongoose'),
    express = require('./config/express'),
    passport = require('./config/passport');
    var db = mongoose();
    var app = express();
    var passport = passport();`

提交所有內容並推送完成結果:通過rhc終端成功部署,但是當我在瀏覽器上訪問鏈接時,

503服務不可用沒有服務器可用於處理此請求。

我回到終端,將rhc ssh返回到openshift服務器,然后運行taill_all以查看日志中發生了什么,在終端中重復以下內容

==> app-root / logs / haproxy.log <== [警告] 134/132624(39619):在0毫秒內停止代理表示。 [警告] 134/132624(39619):代理統計信息已停止(FE:2個連接,BE:0個連接)。 [WARNING] 134/132624(39619):代理快遞已停止(FE:9個連接,BE:103個連接)。 [警告] 134/132624(75275):配置:代理“統計信息”忽略了日志格式,因為它沒有日志地址。 [警告] 134/132624(75275):配置:代理'express'忽略了日志格式,因為它沒有日志地址。 [WARNING] 134/163313(75275):服務器快速/本地齒輪停機,以進行維護。 [ALERT] 134/163313(75275):代理“ express”沒有可用的服務器! [警告] 134/163353(75275):服務器快遞/本地齒輪已啟動(無需維護)。 [WARNING] 134/163355(75275):服務器快速/本地設備已關閉,原因:第4層連接問題,信息:“連接被拒絕”,檢查持續時間:0ms。 剩余0個活動服務器和0個備用服務器。 活動的會話數為0,重新排隊的會話數為0,隊列中剩余的0。 [ALERT] 134/163355(75275):代理“ express”沒有可用的服務器!

==> app-root / logs / nodejs.log <==在module.exports處的require(internal / module.js:20:19)(/ var / lib / openshift / 57375ced7628e1e8f00001bd / app-root / runtime / repo / config / express.js:54:3)。 (/var/lib/openshift/57375ced7628e1e8f00001bd/app-root/runtime/repo/app.js:46:11)位於Object.Module._extensions..js(module._compile(module.js:413:34) .js:422:10)在Module.load(module.js:357:32){[錯誤:找不到模塊'../build/Release/bson']代碼:'MODULE_NOT_FOUND'} js-bson:無法執行使用純JS版本加載c ++ bson擴展{[錯誤:找不到模塊'../build/Release/bson']代碼:'MODULE_NOT_FOUND'} js-bson:無法使用純JS版本加載c ++ bson擴展警告: connect.session()MemoryStore不適用於生產環境,因為它會泄漏內存,並且不會擴展到單個進程。

問題是openshift提供的MEAN.IO插件與任何自定義MEAN.js應用程序的項目結構或依賴關系不同,后者本質上是具有mongodb和express.js的node.js應用程序,用於服務器端api路由,因此不是在這種情況下可用,例如以下問題中的建議建議使用mean.io磁帶盒來部署mean.js應用

請幫助指導我采用更直接的方式在openshift上部署和配置任何mean.js應用程序,如果過去的成功經驗很明顯,建議使用其他服務器,謝謝

如果您選擇直接在服務器上編輯代碼(避免提交和推送更改),那么如果您的應用程序需要還原或重建,則您的工作將會丟失。

Bower通常用作生成器,以在本地支持代碼(在提交並推送更改之前)。 我認為Bower無法在OpenShift上正常工作,因為它期望$HOME目錄可寫。

我會嘗試在本地進行此工作,然后提交並推送結果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM