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 v20.x Oracle Linux 9 nodejs:20 (module) v18.x Oracle Linux 9 nodejs:18 (module) v16.x Oracle Linux 9 nodejs:16 (default) v20.x Oracle Linux 8 nodejs:20 (module) 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 nodejsOracle 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:20
$ sudo dnf update nodejs
-
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
For Nodejs 18:$ sudo dnf install node-oracledb-node18
For Nodejs 20:$ sudo dnf install node-oracledb-node20
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) -
To run Node.js applications —including the node-oracledb module— in containers see the resources below:
- Example Dockerfiles for Node.js and node-oracledb: Oracle Linux 9, Oracle Linux 8, Oracle Linux 7
- Container images on GitHub Container registry: Oracle Linux 9, Oracle Linux 8, Oracle Linux 7
-
Links
- Documentation: Getting Started with Node-oracledb
- Oracle Node.js Developer Center
- Scripting and Oracle Blog: Christopher Jones
- Oracle Linux yum server FAQ: Configuring yum proxy
Community Support
For help with Node.js on Oracle Linux, please visit the Groundbreakers Developer Community Node.js space.