Red Hat & Node.js

The Red Hat build of Node.js provides customers using Node.js with the ability to manage their risk by leaning on Red Hat’s Node.js expertise developed through our leadership and work in the Node.js community.

Try Node.js in the Developer Sandbox

Node.js logo

How does Red Hat support Node.js?

Since 2013, Red Hat has participated as both leaders and contributors in many key Node.js projects including roles in the OpenJS Foundation, Technical Steering Committee, the Build Working Group, the Security Working Group, the Release Working Group, and Next-10 efforts. This leadership helps us address the needs of our customers at a level unmatched by any other partner.

Community

The relationship between Red Hat and Node.js begins with the community. Red Hat starts by working in the upstream communities to ensure a strong and stable base and then builds on the community source to provide a supported Red Hat build of Node.js that is tailored to integrate into the RHEL ecosystem. Support for the Red Hat build of Node.js is provided by Red Hat associates who are leaders in the Node.js community and the RHEL community.

Developers

Developers deploying in containers can leverage the pre-built Node.js container images (including the freely available ubi containers) which allow easy use of the Red Hat build of Node.js through S2I (Source-to-Image), Docker, and other tools like NodeShift, odo, and Helm. The Red Hat security team monitors the Red Hat build of Node.js and the related containers, assessing vulnerabilities in the context of RHEL deployments. They then ensure that vulnerabilities are addressed based on Red Hat's assessment of the impact on developers.

Experience

Red Hat, along with our partner IBM, operates many large-scale Node.js deployments. We have shared our team’s experiences from those deployments by publishing reference architectures so you can use them to help solve your business’s needs. Red Hat also works in packages that run on top of Node.js with a particular focus on simplifying Node.js deployment to Kubernetes. These include Opossum, CloudEvents, NodeShift, fass-js-runtime, and kube-service-bindings. 

Kube-native Node.js

Opossum

Opossum is a Node.js circuit breaker that executes asynchronous functions and monitors their execution status. When things start failing, Opossum plays dead and fails fast. If you want, you can provide a fallback function to be executed when in the failure state.

Learn more 

CloudEvents

CloudEvents is a specification for describing event data in a common format, allowing for interoperability and portability of events across different cloud platforms and services. It provides a standard way to represent events and their associated metadata, making it easier to integrate and build event-driven architectures.

Learn more  

NodeShift

NodeShift is a tool and framework that simplifies the deployment and management of Node.js applications on Red Hat OpenShift, which is a containerization platform based on Kubernetes. NodeShift provides a command-line interface (CLI) and a set of utilities specifically designed for deploying Node.js applications on OpenShift.

Learn more  

Service binding

Service binding provides information about a service to a process that needs to bind to that service. Combining the Service Binding Operator and kube-service-bindings is a convenient and consistent way of sharing credentials for services, letting you easily secure your deployments.

Learn more 

faas-js-runtime

The faas-js-runtime is a function invocation framework for executing serverless functions in Node.js or TypeScript on OpenShift. This module supports both the HTTP and CloudEvents specifications.

Learn more