Upgrade to Pro — share decks privately, control downloads, hide ads and more …

A really quick tour of Docker

A really quick tour of Docker

Slides from my talk on Docker at the Kickstart.mv Techtalk session 2

07138c4d66b39c5e73f42ada0a85643a?s=128

Jawish Hameed

May 28, 2014
Tweet

Transcript

  1. None
  2. • Jaa / Jawish Hameed • Chief Software Architect, Semicolon

    • In love with all things science & technology • Blog: http://jawish.org/ • Github: http://github.com/jawish
  3. “A way to package, ship and run code” • Build

    once, run anywhere (almost) • Based on Linux containers • Open-sourced and maintained by dotCloud http://docker.io/
  4. DEVS: • Content agnostic • Hardware agnostic • Content isolation

    OPS: • Content agnostic • Hardware agnostic • Automation • High efficiency
  5. • Virtualization • Ships too much irrelevant stuff (OS, services

    etc) • Large file size • Whole OS-level virtualization not really necessary • Emulation => Overheads + Performance hit!! • Containers • Linux feature • Run a process sandboxed within a control group • Can run on top of a minimal host OS, dependencies and configs all inside each container, isolated
  6. • Own, isolated namespace and cgroups • Process PIDs, mounts,

    networking • Memory, cpu • Your code, your configs, your processes • Different file systems: Union, snapshot, copy-on-write
  7. Skipping this. Please refer to the Docker website for details.

    OS Support: • Linux => First class • Windows and OSX =>Via Virtual Box and custom image
  8. A Daemon: • Runs on host • Manages container processes

    • CLI connects to daemon • REST API to daemon Containers: • File System • Base Image + Your files • Process(es) • Port(s) • Volume mount(s)
  9. • Manual • Install, config, commit/export • Great for one-off

    builds • Automated • Scripted builds with “Dockerfile” • Repeatable, distributable
  10. • CLI interface has intuitive commands: • ps, diff, commit,

    push, run, rm … • Demo time!
  11. • Registry Server • Centralized docker image storage and manager

    • Docker Index => Public Registry Server • Maintained by dotCloud • Lots of pre-configured, ready to run images for webservers, mail servers, web frameworks etc.
  12. • CoreOS • Dokku: Heroku-style dynamic deployment • Flynn: Set

    of components for solving ops • MaestroNG: Manage orchestrated deployment • Image processing • Easier SaaS / PaaS
  13. None