2015-05-16 1 views
3

Я создал приложение в Openshift и создал локальный репозиторий git на своем компьютере. Я хочу изменить страницу приветствия по умолчанию здесь: http://nodejs-j4nos.rhcloud.com:3000 и просто скажите Hello world, как this.Скажите «Привет, мир!» в Openshift с Node.js

Так что я удалил из local repo index.html и модифицировал server.js, вставленный в этот код ниже. И совершай, и толкай. Я получаю длинное одобрение, что они приняли мою фиксацию.

Если я хорошо понимаю, что мне не нужно останавливать узел и запускать его снова, но Openshift делает это для меня. Но как вы можете видеть, что Hello World не может видеть, когда открытая ссылка в браузере (http://nodejs-j4nos.rhcloud.com:3000) почему?

var express = require('express'); 
var app = express(); 

app.get('/', function (req, res) { 
    res.send('Hello World!'); 
}); 

var server = app.listen(3000, function() { 

    var host = server.address().address; 
    var port = server.address().port; 

    console.log('Example app listening at http://%s:%s', host, port); 

}); 

remote: Git Post-Receive Result: success   
remote: Activation status: success   
remote: Deployment completed with status: success   
To ssh://[email protected]/~/git/nodejs.git/ 

и вот структура дерева, express перечислен

enter image description here

Основываясь на this SO ответ я попытался изменить сценарий, но не помогло:

var express = require('express'); 
var app = express(); 

app.set('port', process.env.OPENSHIFT_NODEJS_PORT || 8080); 
app.set('ip', process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1'); 

http.createServer(app).listen(app.get('port'), app.get('ip'), function(){ 
    console.log('Express server listening on port ' + app.get('port')); 
}); 

app.get('/', function (req, res) { 
    res.send('Hello World!'); 
}); 
+0

сделал попытку открытия не: порт 3000? просто http://nodejs-j4nos.rhcloud.com ??? при наличии приложения вверх? ¿? ¿ Экспресс по умолчанию работает за http и брандмауэром узла или брандмауэром apache, который перенаправляет порт 80 на 3000. –

+0

https://developers.openshift.com/en/node -js-getting-started.html # launch – zipzit

+0

@Alejandro Teixeira Muñoz изменил с 3000 на 80, но все еще застрял –

ответ

5

Link работает в настоящее время : http://nodejs-j4nos.rhcloud.com Правильный скрипт, чтобы показать «Привет, мир!"Является

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

app.set('port', process.env.OPENSHIFT_NODEJS_PORT || 8080); 
app.set('ip', process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1'); 

http.createServer(app).listen(app.get('port'), app.get('ip'), function(){ 
    console.log('Express server listening on port ' + app.get('port')); 
}); 

app.get('/', function (req, res) { 
    res.send('Hello World!'); 
}); 

И вот доказательство:

enter image description here

Спасибо за это: Deployed Node app to OpenShift successfully, OpenShift still shows default page и этот вопрос: Node.js Deployment in openshift

И вы должны теперь, что вы можете написать в /app-root/repo в $ node server.js, и если что-то не так со сценарием, оно укажет прямо там

0

Найденные мои заметки об использовании OpenShift с узлом: В системе openshift есть встроенные средства управления для поддержки своей системы передач, полезной для управления приложением и средой открытия подъема .

gear   control your application (start, stop, restart, etc) 
       or deps with --cart  (gear start --cart mysql-5.1) 
tail_all  tail all log files. This command displays the last entries 
       in your log files as they are written. You can hit 
       <ctrl>-c to exit this command. 
export   list available environment variables 
rm    remove files/directories 
ls    list files/directories 
ps    list running applications 
kill   kill running applications 
mysql   interactive MySQL shell 
mongo   interactive MongoDB shell 
psql   interactive PostgreSQL shell 
quota   list disk usage 

Передаточная система имеет дополнительные команды. OpenShift Control Gear, Ассортимент трансмиссионных утилитами:

КОМАНД:

build    Run the build steps 
deploy    Run the deploy steps 
help     Display global or [command] help documentation. 
postreceive   Run the git postreceive steps 
prereceive   Run the git prereceive steps 
reload    Reload a cart 
remotedeploy   Run the remotedeploy steps 
restart    Restart a cart 
restore    Restore an application 
snapshot    Snapshot an application 
start    Start the gear/cart 
status    Get the status for a cart 
stop     Stop the gear/cart 

Будет ли какой-либо из этого материала поможет вам остановить и перезапустить передачу? Я бы начал с простой команды «экипировка». Я не помню, Express загружается через NPM или теперь является родным с узлом? В свое время это была установка NPM. Те, кто не попадают в Openshift.

Какова структура древовидной структуры каталога на сервере openshift nodejs?

root 
    \ app-root 
     \ data 
     \ repo <- - the working files for web content end up here. 
     \ runtime 
    \ git 
    \ nodejs 

В зависимостях openshift не нажимаются. Для этого вы можете войти через SSH и перейти к: cd app-root/repo или cd $OPENSHIFT_REPO_DIR, а затем npm install tool_of_choice

+0

Я только что попробовал «перезапуск механизма» не помог –

+0

в repo 'express' указан, как вы можете видеть выше –

Смежные вопросы