Slide 1

Slide 1 text

Docker Introduction

Slide 2

Slide 2 text

Who am I • Niket Patel • @nexneo on Twitter, Github • Working at Beehively as Chief Technologist • Docker newbie

Slide 3

Slide 3 text

How did we get here?

Slide 4

Slide 4 text

Virtual Machines Image Credit: Wikipedia(User: Scsami)

Slide 5

Slide 5 text

Virtualization Pros/Cons • Strong isolation between Virtual Machines • Allows for running heterogeneous OS • Overhead of running full OS • Need to maintain Hypervisor + Host OS

Slide 6

Slide 6 text

Containers Linux LXC - 2008 Solaris Containers (Zones) - 2004 FreeBSD jails - 2000 chroot - 1982

Slide 7

Slide 7 text

VM vs Container

Slide 8

Slide 8 text

What is Docker? • Build • Ship • Run Docker is an open platform for building, shipping and running distributed applications.

Slide 9

Slide 9 text

Common Terms • Docker Image - A Docker image is a read-only template. Images are used to create Docker containers. • Docker registries - Docker registries hold images. • Docker Container - A Docker container holds everything that is needed for an application to run. Each container is created from a Docker image.

Slide 10

Slide 10 text

Again, What is Docker? Docker allows you to package an application with all of its dependencies into a standardized unit for software development.

Slide 11

Slide 11 text

Imperfect Analogy By https://labs.ctl.io/ The Box How the Shipping Container Made the World Smaller and the World Economy Bigger Arguably Docker is doing same thing to software world

Slide 12

Slide 12 text

Demo

Slide 13

Slide 13 text

Why use Docker? • Lightweight way to bundle app with all dependencies in single container. • Container is static bundle that can run anywhere (needs linux +docker engine) • You can limit container’s resources • Manage containers with docker tools (many third party tools available) • Industry wide support. Google Kubernetes, AWS Container service, AWS Beanstalk, Google container engine • Almost non-existent overhead

Slide 14

Slide 14 text

Why not Docker? • Can be complex to grasp • Weaker isolation compared to Virtual Machines • Applications must run on Linux

Slide 15

Slide 15 text

What next?

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

Thank you • Ishi systems for hosting • The Ahmedabad Java Meetup Group • Docker Ahmedabad Group