Node.JS SteamBot на openshift
Я пытаюсь разместить мой SteamBot node.js на openshift, я не использовал его раньше, поэтому в основном я пытаюсь зафиксировать базовый "в моих глазах, а не сервер" для их "хостинга" nodejs.
поэтому, когда я фиксирую файлы и тому подобное, каждый раз, когда приложение запускается, оно говорит мне, что "порт 8080 недоступен" и поэтому не может запуститься. ИДК, что блокирует порт так.
В чем может быть проблема?
С уважением
2 ответа
OpenShift будет регулярно проверять ваше приложение, чтобы увидеть, работает ли оно правильно. Ожидается, что все приложения являются "веб-приложениями", поэтому, если вы не прослушиваете правильный порт, ваше приложение может быть перезагружено, приостановлено или может не запуститься правильно.
Чтобы ваш бот казался здоровым, вам необходимо (process.env.OPENSHIFT_NODEJS_PORT ,process.env.OPENSHIFT_NODEJS_IP)
, как описано в разделе " Запуск ваших проектов Nodejs в OpenShift в два простых шага ".
Возврата простого HTTP 200 на "/" должно быть достаточно, чтобы убедить OpenShift в том, что ваш бот (веб-приложение) в добром здравии.
По соображениям безопасности среда openshift очень ограничена брандмауэром. Таким образом, вы не можете открыть какой-либо порт для вашего сервера. Единственный порт, который вы можете открыть:
process.env.OPENSHIFT_NODEJS_PORT
Если вы выполняете тестирование на своем компьютере перед загрузкой в openshift, полезно проверить, существует ли эта переменная среды, или использовать собственный порт (например, 8080). Так что вы обычно используете do:
var port = process.env.OPENSHIFT_NODEJS_PORT || 8080;
Снаружи вы получаете доступ к вашему серверу openshift по URL-адресу, который они вам дали на порту 80.