OpenShift provides a wide range of languages and services, deployed in applications through a cartridge. Cartridges can be web frameworks, databases, monitoring services, or connectors to external backends.
By packaging services and frameworks within a cartridge, developers and administrators can focus on the delivery of their code and the security of their systems.
Develop your Own
It's easy to add your own frameworks and backends to OpenShift. Through our open Cartridge API you can add your own binaries and logic to OpenShift - anything that can run in Linux can run in your app. Once you've created your cartridge, you can also deploy it directly to OpenShift Online
Follow this guided tour of building cartridges, using a simple Apache web server as an example.
Cartridge Writer's Guide
The guide breaks down the Cartridge API and is the primary reference for building a cartridge.
Learn how to make your new cartridge downloadable so you can install it to OpenShift Online.
|JBoss AS / Wildfly||7.1||8.0|
|Tomcat (JBoss EWS)||6||7|
|JBoss Data Virtualization||6.0|
|JBoss Fuse A-MQ||6.1|
Cartridges receive automatic security updates from Red Hat when deployed in OpenShift Online, and via the supported OpenShift Enterprise subscription channels.
Web cartridges handle HTTP requests and serve web pages or business APIs. The OpenShift servers route traffic to your application's cartridge, and your code does the rest.
Market-leading open source enterprise platform for next-generation, highly transactional enterprise Java applications. Build and deploy enterprise Java in the cloud.
The leading open source Java EE6 application server for enterprise Java applications. Popular development frameworks include Seam, CDI, Weld, and Spring.
A reliable JEE web container based on Tomcat for large scale websites and lightweight web applications.
PHP is a general-purpose server-side scripting language originally designed for Web development to produce dynamic Web pages. Popular development frameworks include: Zend, Laravel, CakePHP, Symfony, and CodeIgniter. Popular applications include: Drupal, WordPress, and MediaWiki.
A general-purpose, high-level programming language whose design philosophy emphasizes code readability. This cartridge serves your requests via Apache and the WSGI interface. Popular development frameworks include: Django, Bottle, Pylons, Zope and TurboGears.
Ruby is a dynamic, reflective, general-purpose object-oriented programming language, with an emphasis on elegant and highly readable code. Popular development frameworks include: Ruby on Rails and Sinatra.
A high-level, general-purpose, interpreted, dynamic programming language.
OpenShift gives you access to a private database instance with full control - you make the choices, not a hosting provider.
A scalable, high-performance, open source NoSQL database by 10gen.
You can install the RockMongo cartridge to administrate your instance from the web.
A multi-user, multi-threaded SQL database server.
Deploy phpMyAdmin to administrate your dbs from the web.
An advanced Object-Relational database management system.
Continuous Integration and Tools
OpenShift enables more than just deployment - it also gives you the tools you need to manage your entire development lifecycle.
Jenkins is a continuous integration (CI) build server that is deeply integrated into OpenShift. When you add Jenkins as an application you will enable your other applications to run complex builds whenever you push code. The Jenkins client connects to your Jenkins application and enables builds and testing of your application. Requires one Jenkins application to be created first.
Allows you to run command line programs at scheduled times. Use this for background jobs and periodic processing.
SwitchYard is a lightweight service delivery framework providing full lifecycle support for developing, deploying, and managing service-oriented applications.
Connect your applications, services and data using standard pattern based integrations.
JBoss Fuse for xPaaS is an enterprise service bus technology for building and implementing communication between different applications, services, and data. It is specifically designed for extensive connectivity. It includes JBoss A-MQ for xPaaS, a messaging service to connect applications and devices using notifications and messages.