Node.js for Oracle Linux

  • Home > 
  • Node.js for Oracle Linux

About Node.js for Oracle Linux

This page describes Node.js and related packages for current releases of Oracle Linux. For Oracle Linux 9, the default packages (nodejs-16) are provided as standard packages while other releases are provided via AppStream modules. For Oracle Linux 8, the packages are provided via AppStream modules and are covered under Oracle Linux support. Consult the Application Stream Module Life Cycle appendix in the Managing Software in Oracle Linux manual for support timelines. For Oracle Linux 7, these packages are published in developer repositories, for which support is limited to package installation assistance only.

Available Node.js Releases


Node.js Version Oracle Linux Release Repository/Module:Appstream
v18.x Oracle Linux 9 nodejs:18 (module)
v16.x Oracle Linux 9 nodejs:16 (default)
v18.x Oracle Linux 8 nodejs:18 (module)
v16.x Oracle Linux 8 nodejs:16 (module)
v14.x Oracle Linux 8 nodejs:14 (module)
v12.x Oracle Linux 8 nodejs:12 (module)
v10.x Oracle Linux 8 nodejs:10 (module - default)
v16.x Oracle Linux 7 ol7_developer_nodejs16
v14.x Oracle Linux 7 ol7_developer_nodejs14
v12.x Oracle Linux 7 ol7_developer_nodejs12

Enabling Required Repositories

Oracle Linux 7

To configure the yum repositories shown above on your system, install the oracle-nodejs-release-el7. After installing this RPM, the default enabled repository is that for the latest available Node.js release. To configure the Node.js and the Oracle Instant Client repository:

$ sudo yum install -y oracle-nodejs-release-el7 oracle-release-el7

Oracle Linux 8

Nodejs is released as an AppStream Module for Oracle Linux 8; ol8_appstream repository is enabled by default on Oracle Linux 8. If not enabled, execute:

$ sudo dnf config-manager --set-enabled ol8_appstream

Oracle Linux 9

Nodejs is released as an AppStream package for Oracle Linux 9; ol9_appstream repository is enabled by default on Oracle Linux 9. If not enabled, execute:

$ sudo dnf config-manager --set-enabled ol9_appstream


Installing and updating Node.js

Oracle Linux 7

To install the latest Node.js:

$ sudo yum install nodejs

If you have Node.js installed, and a newer release has been published, make sure you update oracle-nodejs-release-el7 first.

$ sudo yum update oracle-nodejs-release-el7
$ sudo yum update nodejs

Oracle Linux 8

On Oracle Linux 8 Nodejs is released as an Appstream Module; to list all the Nodejs Streams available:

$ sudo dnf module list --all nodejs

To install one Nodejs Stream (example below shows release 16):

$ sudo dnf module enable nodejs:16
$ sudo dnf module install nodejs

If you have Node.js installed, and a newer release has been published:

$ sudo dnf module reset nodejs
$ sudo dnf module install nodejs

Oracle Linux 9

On Oracle Linux 9 Nodejs is released as an Appstream package as well as an AppStream module; to install the default Node.js:

$ sudo dnf install nodejs

If you have Node.js installed, and a newer release has been published as a module, you can update to the newer release with (example):

$ sudo dnf module enable nodejs:18
$ sudo dnf update nodejs

node-oracledb: Connecting Node.js to Oracle Database

The node-oracledb module for Node.js powers high performance Oracle Database applications. Use node-oracledb to connect Node.js applications to Oracle Database. The node-oracledb module is open source and maintained by Oracle. It is stable, well documented, and has a comprehensive test suite.

About Oracle Instant Client

node-oracledb depends on Oracle Instant Client. Starting with Oracle Instant Client 21c, yum/dnf configuration files are delivered via the packages oracle-instantclient-release-el8 and oracle-instantclient-release-el7, respectively. Oracle Instant Client packages up to release 19c are in the ol7_oracle_instantclient and ol8_oracle_instantclient repositories, configured with release packages oracle-release-el7 and oracle-release-el8. Assuming you have enabled the repository for Oracle Instant Client appropriate for your Oracle Linux release, it will be installed as a dependency. More details about Oracle Instant Client on this yum server.


Installing node-oracledb

Each Node.js release has its own repository on Oracle Linux yum server and each of those repositories also contains a corresponding RPM for node-oracledb. These RPMs follow this naming scheme:

node-oracledb-node<node release number>
               

Oracle Linux 7

The first step on Oracle Linux 7, based on Nodejs release installed, is to enable the proper repository:

For Nodejs 12:

$ sudo yum-config-manager --disable ol7_developer_nodejs*
$ sudo yum config-manager --enable ol7_developer_nodejs12

For Nodejs 14:

$ sudo yum-config-manager --disable ol7_developer_nodejs*
$ sudo yum config-manager --enable ol7_developer_nodejs14

For Nodejs 16:

$ sudo yum-config-manager --disable ol7_developer_nodejs*
$ sudo yum config-manager --enable ol7_developer_nodejs16

Enable the Oracle Instant Client Yum repository:

$ sudo yum install oracle-instantclient-release-el7.x86_64

Install node-oracledb RPM:

$ sudo yum install node-oracledb-node*

Before you use node-oracledb in a Node.js program, set NODE_PATH so that the node-oracledb module can be found:

$ export NODE_PATH=$(npm root -g)

Oracle Linux 8

To install node-oracledb on Oracle Linux 8:

$ sudo dnf install oracle-instantclient-release-el8 oraclelinux-developer-release-el8

For Nodejs 14:

$ sudo dnf install node-oracledb-node14

For Nodejs 16:

$ sudo dnf install node-oracledb-node16

Before you use node-oracledb in a Node.js program, set NODE_PATH so that the node-oracledb module can be found:

$ export NODE_PATH=$(npm root -g)

Node.js in Containers

To run Node.js applications —including the node-oracledb module— in containers see the resources below:

Additional Resources

Links

Community Support

For help with Node.js on Oracle Linux, please visit the Groundbreakers Developer Community Node.js space.

Contact Us

software.hardware.complete
Subscribe | Careers | Contact Us | Legal Notices | Terms of Use | Your Privacy Rights