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

Dockerize All The Things

Dockerize All The Things

Slide deck from YAPC::NA 2014 in Orlando, FL about Docker and Perl applications.

Jade Allen

June 25, 2014
Tweet

More Decks by Jade Allen

Other Decks in Technology

Transcript

  1. WHAT • Docker is a lightweight virtualization platform. • It simplifies deploying

    applications and services to any platform that supports Docker. • Think of it as a cargo container for your service. • Pack, ship and run your service in a completely isolated environment easily.
  2. WHAT • Docker service written in Golang. • Uses libcontainer and a

    union filesystem for Linux to virtualize applications. • Virtualization overhead is very low; effectively zero memory/CPU cost above native service. • Completely isolated environment.
  3. WHY • Think of it as git for filesystems (push and

    pull primitives) • Makes deploying services to {your own | cloud | PaaS } servers easy and repeatable • Completely isolates your application environment • Faithfully replicates your environment for dev and testing • It's fun!
  4. THE NEW HOTNESS • libswarm - a toolkit for building network

    services • libchan - go style communication over IPC and/or network • libcontainer - A container library (ultimately platform independent)
  5. HOW 1. After installing docker and its base image, 2. git clone

    https://gist.github.com/mrallen1/44a415c302139af78dde! 3. docker build -t dice-service .! 4. docker run -t dice-service! 5. curl -X POST -d'roll=3d6' localhost:<assigned-port>!