刚刚花了8个小时试图在我的Windows机器上无错误地编译oracledb,现在终于通过nodejs返回oracle数据......我现在想知道如何将nodejs应用程序部署到我们企业内的linux主机上。
我很欣赏这是一个普遍的问题,但如果将nodejs应用程序迁移到redhat将导致一系列问题,我不想再进一步了解。
这是一个在Linux项目上部署到Linux后运行一个新的“npm install oracledb”命令的情况,或者不是那么简单(我很欣赏linux主机需要配置相关的Oracle驱动程序等) )。
或许在linux上我可以全局安装oracledb“npm install -g oracledb”,然后一旦部署,nodejs应用程序将从全局npm_modules中获取依赖关系。
答案 0 :(得分:0)
迁移不会导致问题。如果您的Linux机器具有Instant Client basic&安装了devel RPM软件包,你的应用程序的package.json甚至可能只依赖于oracledb'。
如果您有Instant Client拉链,则可以将它们放在node-oracledb /opt/oracle/instantclient
使用的默认位置,这样您就不必设置OCI_*_DIR
。另请查看关于使用FORCE_RPATH
的{{3}}(或者您必须设置LD_LIBRARY_PATH
,或使用ldconfig
)
如果预先设置难以管理,您可以在部署应用之前全局预安装node-oracledb,如您所示。您可能需要将NODE_PATH
设置为oracledb安装到的node_modules子目录:
export NODE_PATH=/opt/local/node/node-v4.4.7-linux-x64/lib/node_modules