2016-11-11 2 views
0

Я создал приложение Node.js на своем ПК с ОС Windows. Теперь я хочу развернуть это приложение на Openshift.Разверните существующий источник Node.js на OpenShift

Я установил rhc и установил SSH key.

После многих попыток я не смог развернуть свое приложение в Openshift.

Я создал приложение на OpenShift для Node.js в этот адрес:
http://webalves-javalinuxcode.rhcloud.com/

+0

Можете вдаваться в подробности? Как вы пытались его развернуть? Какую ошибку вы получили? Установили ли вы 'rhc' и создали свой' ssh' ключ? Какую командную строку вы использовали для развертывания? – Tom

+0

Том, я также создал ключ ssh ... Я могу получить доступ к моей учетной записи через ssh и sftp. Кроме того, у меня есть источник приложения в zip-файле. –

ответ

1

У меня есть веб-приложение, размещенного в OpenShift с использованием NodeJS и Postgres. Для его развертывания я использую Openshift git repository, который запускает развертывание при каждой фиксации.

Вот documentation about Openshift deploy.

После установки rhc и уже установленного SSH key, я считаю, что приведенные ниже шаги помогут вам развернуть его.

  1. Клонирование репозиторий, созданный OpenShift для Вас проекта: rhc git-clone <app_name> или создать вручную свой git remote указывая на OpenShift хранилище

  2. Удалить все файлы, которые не нужны в папке creted в локальном хранилище (OpenShift может создать некоторые файлы по умолчанию для вашего проекта)

  3. Разархивируйте источник из проецировании в папке git repository

  4. Фиксировать все источники: git add ., то git commit -am "Your commit message"

  5. Нажмите код до OpenShift: git push -f

Это должно вызвать процесс развертывания и вы увидите его в консоли, как описано в ссылку на документацию, которую я вставил выше.

В качестве дополнительной информации вы также должны внести несколько изменений в исходный код. Для доступа к базе данных, как и любого другого ресурса, в Openshift есть много environment variables, к которым вы можете получить доступ. Так что, если вам нужно запустить свой HTTP-сервер, реализованный в NodeJS в OpenShift, вам нужно будет внести некоторые изменения, например:

package.json

"scripts": { 
    "start": "node server.js" 
} 

server.js

var serverPort = process.env.OPENSHIFT_NODEJS_PORT || 8080; 
var serverIpAaddress = process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1'; 

var server = app.listen(serverPort, serverIpAaddress, function() { 
    logger.info("Starting application"); 
    logger.info("Starting HTTP server - port %s", server.address().port); 
}); 

Надеюсь, это поможет.

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