OPENSHIFT редактирование LD_LIBRARY_PATH и PATH для настройки среды

В настоящее время я пытаюсь развернуть свое веб-приложение java на Openshift. Мое веб-приложение импортирует библиотеку Gurobi, для которой требуется среда лицензирования Gurobi для запуска моей модели линейного программирования. Таким образом, я пытался все, что мог, чтобы установить лицензию на сервер openshift linux и т. Д.

Мне удалось наладить несколько вещей.

  1. Я подключился к своему приложению по SSH и зарегистрировал HostName платформы openshift linux в лицензии.
  2. Мне удалось изменить .bash_profile файл, в котором настраиваются пользовательские среды. ниже приведены данные, которые я поместил в файл.

    export GUROBI_HOME="/var/lib/openshift/54d4e281e0b8cd3a1400015c/jbossews/gurobi600/linux64"
    export PATH="${PATH}:${GUROBI_HOME}/bin"
    export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${GUROBI_HOME}/lib"
    export GRB_LICENSE_FILE="/var/lib/openshift/54d4e281e0b8cd3a1400015c/jbossews/gurobi.lic"
    

Проблема с вводными данными выше заключается в том, что я считаю, что для PATH & LD_LIBRARY_PATH openshift автоматически восстанавливает их каждый раз, когда я обращаюсь к своему приложению через оболочку.

Я думаю, это привело к тому, что мое приложение не смогло создать экземпляр объекта GRBENV, который является объектом среды Gurobi, который проверяет файл gurobi.lic и использует LD_LIBRARY_FILE.

Кто-нибудь делал что-то подобное раньше? Очень нужна помощь в этом.

Брэндон


person Brandon Seet    schedule 25.02.2015    source источник
comment
В большинстве случаев файл, который вы хотите редактировать, .bashrc, а не .bash_profile. Вы можете попробовать. Если это не помогает, есть ли способ узнать больше о проблеме? (сообщения об ошибках, трассировки стека, файлы журналов ...)   -  person geert3    schedule 25.02.2015
comment
forum.openshift.com/ я прочитал на этой странице форума информацию об openshift, поскольку они не позволяют разработчикам редактировать файл .bashrc, мы должны использовать файл .bash_profile вместо @ geert3   -  person Brandon Seet    schedule 25.02.2015
comment
Я обнаружил закрытую ошибку [bugzilla.redhat.com/show_bug.cgi?id = 888377] в redhat. У меня такая же досадная проблема. Я просто сбрасываю свой путь каждый раз, когда вхожу в систему с помощью ssh   -  person atorres    schedule 25.04.2016


Ответы (1)


То, как openshift создает ваше приложение и оболочку ssh, похоже, отличается. Правильное место для установки переменных среды - это один из start action_hooks. Например, если вы отредактируете файл .openshift / action_hooks / start и добавите:

экспорт PATH = "$ {PATH}: $ {GUROBI_HOME} / bin"

это будет работать для экземпляра, на котором запущено ваше приложение, но не для SSH Shell. Я сделал следующий тест: echo $ PATH> $ OPENSHIFT_DATA_DIR / PATH

чтобы подтвердить, что путь, по которому запущено приложение, может быть установлен с помощью start hook.

Я не уверен, что это решит ваш вопрос (потому что вы упомянули оболочку SSH, а я до сих пор не знаю, как установить для этого PATH).

person atorres    schedule 25.04.2016