# What have containerS GOTTEN US?

Vincent Batts @vbatts

    $> finger $(whoami)
    Login: vbatts                           Name: Vincent Batts
    Directory: /home/vbatts                 Shell: /bin/bash
    Such mail.
    Plan:
    OHMAN
    $> id -Gn
    devel opencontainers docker appc redhat golang slackware

## Containers

(Cite: The Internet)

## History Lane

- Installing Distros
  - DistroWatch anyone?
  - LUGs

## History Lane

- Monsterous, unique installations
  - (we would never do this in production)
  - ((totally did this in production))

## History Lane

- rsync for backups
- store config in version control
- and have config management
- version control the config management

## History Lane

- Virtual Machines!
- and snapshots
- rsync for backups
- store config in version control
- and have config management
- version control the config management

## History Lane

- Containers!
- build files in version control
- image registries
- Virtual Machines!
- and snapshots
- rsync for backups
- store config in version control
- and have config management
- version control the config management

## History Lane

- Orchestration!
- deployment configs
- Containers!
- build files in version control
- image registries
- Virtual Machines!
- and snapshots
- rsync for backups
- config management
- version control the config management

## History Lane

Wash, Rinse, Repeat

## Gotten us?

Fresh feels,

on doing the same things in a new way

Thinner,

but still bloated

Simpler,

yet more complicated

Portable,

while predictable

## Possible without containers?

I reckon

## Possible without containers?

(cite: the internet)

## Gotten all of us?

Helping others?

Looking out for each other?

Cross pollinating?

exaggerated stress?

burnout?

## Possible without containers?

Absolutely, and it takes everyone of us to recognize that others want stress-free happiness, just like you.

This is not

"winner takes all [the happiness]"

## Possible without containers?

(cite: the internet)

## Container Standards

Runtime Specifications

- Opencontainer Runtime-spec (github.com/opencontainers/runtime-spec)
- Started June 2015
- Presently at v1.0.0-rc5
- `runc` is the flagship. Other implementations like runv and oci-runtime-tools

## Container Standards

Distribute Image Specifications

- Opencontainer image-spec (github.com/opencontainers/image-spec)
- Started April 2016
- Originated from Docker-1.10 and Registry v2 format
- Presently at v1.0.0-rc5
- Support from Amazon ElasticContainerRegistry (ECR), rkt, flatpak, skopeo, cri-o, containerd and more
- pull-requests opened for docker (moby/moby) and docker-registry

## Container Standards

Cloud Native Computing Foundation (cncf.io)

- Kubernetes orchestration
- Prometheus monitoring
- gRPC, CoreDNS, Linkerd, OpenTracing, Fluentd
- newly added containerd and rkt

(Cite: the internet)

## What's next?

Desktop applications will shape and mold (see flatpak.org, JessFraz efforts, even an AtomicWorkstation)

Get used to not having root privileges (see bubblewrap and bwrap-oci, and recently runc)

Get used to not having capabilities (see System Tap and a blog about this)

## What's next?

Cloud Native application development (see CNCF)

Rather than only shoving "legacy" code in new boxes

Discoverable APIs (see OpenAPIs)

"Scheduled" functionality (see OpenShift and Kubernetes)

intercommunication (see gRPC)

event and metric driven services

## What's next?

(Cite: the internet)

Respect Life Cycles

## Thanks!

## Vincent Batts

## @vbatts| vbatts@redhat.com