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

CoreOS & Docker

CoreOS & Docker

A brief introduction from the point of view of a developer creating a development environment.

Avatar for Daniel S Poulin

Daniel S Poulin

December 06, 2013
Tweet

Other Decks in Technology

Transcript

  1. Docker manages repeatable, shareable linux containers, with git-like change management.

    Docker containers are modular, single- application service providers. What is it?
  2. What’s a Linux Container? Technically, LXC containers. Like FreeBSD jails,

    they provide highly-isolated process environments and namespaced access to system resources. The only kernel/drivers that run are the host’s.
  3. What does Docker add? A portable container image format, based

    on copy-on-write, layered file systems. Base filesystem images are shared, only differences are saved to the container.
  4. • Linux Kernel + Docker + etcd • Read-only root

    filesystem • No package manager • Self auto-updating • Etcd = sophisticated orchestration What is it?
  5. Why is it cool? You get a stable host dedicated

    to running docker instances, and nothing else. It’s never gonna: • Give you up. • Let you down. • Run around and desert you.
  6. • We work with a lot of websites • Want

    a quick & easy localhost with no fuss • Something easily given to new developers Motivation
  7. The Server-Side Bits • Apache + mod_php + mysql •

    Apache’s mod_vhost_alias gives us wildcard virtual hosts ◦ test.dsdev -> /var/www/test/public_html/ • Dnsmasq let’s us point *.dsdev at a virtual machine ◦ test.dsdev -> vm’s IP
  8. See it All Together I’ve polished and published what we

    just did on github. https://github.com/EpocSquadron/coreos-devenv