Oracle Database has been supported in Docker containers for the longest time.  Maria Colgan reported “Oracle Database 12c now available on Docker” in April 2017.  For Oracle Real Application Clusters (RAC), however, availability and production supportability did not follow Single Instance Oracle Databases at first; until now:  Oracle Database 21c (21.3) comes with full production support for Oracle RAC on Docker! – UPDATE January 2023: Oracle Database 19c (19.16 and later) is now also fully supported for Oracle RAC on Docker!!
 

Why Oracle RAC on Docker?

With many Oracle customers already using Docker for applications, providing Oracle Single Instance Database and Oracle RAC Docker container images was the next logical step to complement existing application deployments and lay the foundation for container-based deployments of microservices architectures. In such environments, Oracle RAC on Docker simplifies and accelerates the deployment of Oracle RAC environments; Oracle RAC databases in Docker containers can be launched in seconds while containers are portable across machines and locations. In addition, Oracle RAC on Docker benefits from inherent Docker container characteristics such as low (system) overhead. 
 

What’s New with Production Support?

Although “Oracle RAC now available on Docker!” was announced in March 2018, just about a year after the availability of the first Single Instance Oracle Database Docker images, the initial Oracle RAC on Docker images were “only supported for test and development environments, but not for production environments.” Not much has changed ever since, bearing the question: “What is new with production support?”

Three years and four database versions later, Oracle RAC on Docker images have been

  • Intensively tested and enhanced to meet various internal and customer requirements.
  • Augmented by a DNS server in addition to the RAC Storage Server.
  • Fully documented, including the creation, launch, and “production vs. test” deployment. 

Based on those enhancements, Oracle Database 21c is the first release for which Oracle RAC on Docker is fully supported for production environments, now joined by Oracle Database 19c (January 2023 update)

For high availability reasons, production support for Oracle RAC on Docker is only available for multi-host Docker deployments in which RAC instances reside on more than one Docker host during normal operation. Refer to the Oracle RAC on Docker documentation for more details on supported deployment scenarios. 
 

How to benefit from Oracle RAC on Docker?

You can get started with Oracle RAC on Docker in three simple steps: 

  1. Download the RAC on Docker images from either GitHub or Oracle’s Container Registry.
  2. Review the official Oracle 21c RAC on Docker documentation.  
  3. Optimize your deployments using the “Best Practices For Deploying Oracle RAC On Docker“. 

Using the GitHub download, you can build your own images with the build scripts provided and by executing the following steps:

Using Oracle’s Container Registry, you can download a pre-built image with Oracle Database 21c (21.3) as the base image; just sign in using your Oracle Account to accept the license agreement for the Oracle container you have selected: 

 

What’s Next? 

Oracle RAC on Docker development will not stop to improve the current images, adapt to new environments, and make images broadly available. Consequently, the next development milestones include, but are not limited to, supporting Oracle RAC on Kubernetes. This project is in development and its availability should be announced soon, along with other enhancements to further complete Oracle’s Docker offerings. 

In the meantime, follow this blog and monitor updates to the following My Oracle Support Notes to get the latest Oracle RAC on Docker updates and news