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

Introduction to Docker

Introduction to Docker

This is a intro talk I have given to Docker-Bangalore group http://www.meetup.com/Docker-Bangalore/

Vamsee Kanakala

February 22, 2014
Tweet

More Decks by Vamsee Kanakala

Other Decks in Technology

Transcript

  1. So what is Docker? • A wrapper over LXC •

    Tries to commoditize LXC • Enables portable deployments • Simplifies things like CI / CD • Efficient, quick provisioning • Versioning of images (like git) • Takes an application centric view
  2. A bit more about LXC • Provides OS-level virtualization for

    Linux • Own process space • Own network interface • Own init framework • Isolation achieved with cgroups • But shares kernel with the host
  3. A basic workflow • Pull docker images from public registry

    • Run it on your host • Add your own changes • Push it back to share them • Or you could build from ground up... • You can also setup a private registry • Or just sign up for a SaaS offering
  4. Dockerfile • The canonical way to build your image •

    Basically a glorified shell script • But definitely easier to maintain • FROM, RUN, CMD, EXPOSE, ENV, ADD, WORKDIR, VOLUME, etc. • Create your own base image with tools like debootstrap • Use the cache, Luke
  5. Some links... • Docker home page: www.docker.io • Docker blog:

    http://blog.docker.io • Docker book: www.dockerbook.com • Jeremy Petazzoni's Talk at Yandex: http://tech.yandex.ru/events/yac/2013/talks/108 5 • Dokku, Flynn.io, CoreOS, Deis.io, Quay.io, Orchardup.com, boot2docker, etc.