node.js - 将带有 node-jdbc 模块的 Node.js 应用程序部署到 Bluemix

标签 node.js ibm-cloud

我正在尝试将带有 node-jdbc 模块的 Node.js 应用程序推送到 Bluemix。该node-jdbc模块需要安装JDK。有没有办法在同一运行时推送 Node.js 应用程序并安装 JDK?

最佳答案

这是我用来部署具有 node-jdbc 依赖项的 Bluemix Node.js 应用程序的解决方案:

1) 下载适用于 Linux x64 的 JDK 包(与 Cloud Foundry 堆栈兼容)

2)在根项目目录中安装/解压JDK包,我的目录是这样的(jdk1.7.0_79是我添加的新目录):

-rwxr-xr-x@  1 adasilva  staff    436 Jan 24 18:21 README.md
drwxr-xr-x  15 adasilva  staff    510 Apr 10  2015 jdk1.7.0_79
-rw-r--r--@  1 adasilva  staff     72 Jan 27 15:27 manifest.yml
-rwxr-xr-x@  1 adasilva  staff    327 Jan 27 21:21 package.json
-rwxr-xr-x@  1 adasilva  staff   4412 Jan 24 18:21 server.js

3) 现在,为了让构建包检测 Java,我必须设置以下环境变量:

cf set-env your-app-name JAVA_HOME /tmp/staged/app/jdk1.7.0_79

部署后,应用程序目录实际上位于 /home/vcap/app,但编译是在暂存阶段完成的,因此目录不同

4) 对于运行时,应用程序需要 Java 库,因此我还需要设置另一个环境变量:

cf set-env your-app-name LD_LIBRARY_PATH /home/vcap/app/jdk1.7.0_79/jre/lib/amd64:/home/vcap/app/jdk1.7.0_79/jre/lib/amd64/server

请注意,现在我使用了 /home/vcap/app 因为运行时将在应用程序部署之后。

5) 再次运行cf Restagecf Push来重新部署应用程序。

关于node.js - 将带有 node-jdbc 模块的 Node.js 应用程序部署到 Bluemix,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36358991/

相关文章:

node.js - NPM - Browserify "' import' and 'export' may appear only with 'sourceType: module' "

javascript - 从 Node-JS 聆听/关注 IBM Cloud Object Storage 中的变化

gradle - 如何使用bmuschko/gradle-docker-plugin通过Gradle自动将文件复制到IBM Containers中正在运行的docker

redis - IBM Bluemix Public 上 Compose for Redis 的安全/TLS 支持?

java - IBM BlueMix 上的 Liferay 安装

node.js - 使用 nodejs 流式传输和转换文件

node.js - ExpressJs 与 NodeJs 版本的兼容性

node.js - 将 Express 生成的 app.js 文件更改为 server.js

cloudant - 如何将 Java 应用程序(java 代码)连接到 cloudant?

css - 使用 Grunt 和 grunt-contrib-cssmin 删除注释