OPENSHIFT编辑LD_LIBRARY_PATH&用于环境设置的路径

时间:2015-02-25 14:00:39

标签: java linux openshift gurobi

我目前正在尝试将我的java Web应用程序部署到Openshift上。我的Web应用程序导入Gurobi库,需要Gurobi许可证环境才能运行我的线性编程模型。因此,我一直在努力尝试将许可证安装到openshift linux服务器等

我设法做了一些事情。

  1. 我已通过SSH连接到我的应用程序并将openshift linux平台的HostName注册到许可证中。
  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"
    
  3. 上面输入的问题是我相信PATH& LD_LIBRARY_PATH,每次我通过shell访问我的应用时,openshift会自动恢复它们。

    我认为这导致我的应用程序无法实现GRBENV对象,这是一个Gurobi Environment对象,用于检查gurobi.lic文件并使用LD_LIBRARY_FILE

    之前有人做过类似的事吗?真的需要帮助。

    布兰登

1 个答案:

答案 0 :(得分:0)

openshift实例化你的app并且ssh shell似乎有所不同。设置环境变量的正确位置是start action_hooks之一。例如,如果您编辑.openshift / action_hooks / start文件并添加:

export PATH =“$ {PATH}:$ {GUROBI_HOME} / bin”

这适用于运行APP的实例,但不适用于SSH Shell。我做了以下测试: echo $ PATH> $ OPENSHIFT_DATA_DIR / PATH

确认可以通过启动挂钩设置运行APP的路径。

我不确定这是否解决了你的问题(因为你提到了SSH shell,我仍然不知道如何设置PATH)。