CONTAINERS in CLOUD FOUNDRY

Application Runtime
+
Container Runtime

 

A container running on a machine is just a process on the host operating system like any other.

The unique part though is in how that process is isolated and restricted in very intentional ways.

STEMCELL

BUILDPACK

APPLICATION

DROPLET

STACK

What is a STEMCELL ?

A bare minimum OS skeleton with a few common utilities pre-installed
+

a BOSH Agent, and a few configuration files     to securely configure the OS by default.

A stemcell is the OS that runs on the VM (or bare metal)

The concept of a Stemcell solves the following:

capturing a base operating system

versioning changes to the operating system image

reusing base operating system images across VMs of different types

reusing base operating system images across IaaS's of different types

What are BUILDPACKS ?

Buildpacks provide framework and runtime support for your applications.

For Example

The Ruby buildpack

has a Ruby interpreter and Rubygems

Knows how to install your application dependencies by processing the Gemfile

What is a
STACK ?

A stack is a prebuilt root filesystem (rootfs) that supports a specific operating system

cflinuxfs2
or
windows2012R2
 

What is a
DROPLET ?

A droplet is an archive of
 
application + buildpack

DROPLET

+ STACK (rootfs)

=
OCI
CONTAINER

This is then run with runC

runC is a cli tool for spawning and running containers according to the OCI specification

Text

The level of abstraction is your application
not containers

$ cf push application

I am Mick Pollard
@aussielunix

Containers in Cloud Foundry

By Mick Pollard

Containers in Cloud Foundry

A quick explanation of what is a container in a Cloud Foundry world.

  • 3,117