Docker, CoreOS, and Deis

Chris Armstrong / @carmstrong_afk

  • Resident gingeneer at OpDemand (we build Deis!)
  • Former SaaS builder
  • Former ops engineer
  • First Multi-Host Docker PAAS
  • Heroku-inspired workflow
  • 100% open source
  • Python & Go

Deis Today

  • ~2.5k stars, 150 watchers, 300 forks
  • 5 full-time devs, ~60 contributors
  • > 100 Deis deployments*


* that we know of

etcd


core@ip-10-21-2-167 ~ $ etcdctl ls /deis/controller
/deis/controller/protocol
/deis/controller/secretKey
/deis/controller/builderKey
/deis/controller/registrationEnabled
/deis/controller/webEnabled
/deis/controller/host
/deis/controller/port
					

fleet


[Unit]
Description=deis-router

[Service]
ExecStart=/bin/echo "Hello, friend!"

[X-Fleet]
Conflicts=deis-router@*.service
MachineMetadata=us-east
					

What is a PaaS?

CLI

+ apps

+ infrastructure

= happy devs

Division of Responsibility

  • Developers own the containers
  • Operations own the platform

Demo time!

Buildpacks or Docker images

Deis Components

  • deis/controller
  • deis/database
  • deis/cache
  • deis/logger
  • deis/builder
  • deis/registry
  • deis/router

Deis + Docker + CoreOS = <3

Contributing

  • https://github.com/deis/deis
  • IRC @ freenode #deis

Deployments

  • Anywhere CoreOS runs!
  • EC2, Rackspace, Google Compute, Digital Ocean

Questions?

Resources