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.

Avatar for Jade Allen

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>!