Appendix A. OpenShift and 12 Factor Apps

12 Factor Apps is a methodology that outlines rules guiding application developers on how to build cloud native applications. The initial list came out of Heroku based on their experience running applications on their Heroku platform.

We strongly recommend that the readers become familiar with these 12 factors and use them as a guide while implementing their application. They are described in detail at https://12factor.net. The 12 factors are:

Codebase

One codebase tracked in revision control, many deploys

Dependencies

Explicitly declare and isolate dependencies

Config

Store config in the environment

Backing services

Treat backing services as attached resources

Build, release, run

Strictly separate build and run stages

Processes

Execute the app as one or more stateless processes

Port binding

Export services via port binding

Concurrency

Scale out via the process model

Disposability

Maximize robustness with fast startup and graceful shutdown

Dev/prod parity

Keep development, staging, and production as similar as possible

Logs

Treat logs as event streams

Admin processes

Run admin/management tasks as one-off processes

We have also extended the list to include:

Security

DevSecOps allows seamless collaboration between teams to effectively mitigate risk using a defense in-depth ecosystem approach

The purpose of this appendix is to go through each of the factors and map how they apply to application development using ...

Get DevOps with OpenShift now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.