Slide 1

Slide 1 text

Introduction to Docker by josé albornoz

Slide 2

Slide 2 text

José Albornoz chilean ruby = <3 co-founding startup ! @eljojo eljojo.net

Slide 3

Slide 3 text

what’s docker?

Slide 4

Slide 4 text

what’s docker? • Management system for LXC Containers • Lightweight virtual machines • Applications are isolated and easy to distribute

Slide 5

Slide 5 text

Demo

Slide 6

Slide 6 text

how does it work?

Slide 7

Slide 7 text

Docker Image • Snapshot of filesystem • They run one process

Slide 8

Slide 8 text

Demo

Slide 9

Slide 9 text

Layers

Slide 10

Slide 10 text

Layers Ubuntu

Slide 11

Slide 11 text

Layers Ubuntu nginx

Slide 12

Slide 12 text

Layers Ubuntu nginx ruby

Slide 13

Slide 13 text

Layers Ubuntu nginx ruby rails application

Slide 14

Slide 14 text

Layers !"5e66087f3ffe Virtual Size: 192.5 MB # $"4d26dd3ebc1c Virtual Size: 192.7 MB # $"99ec81b80c55 Virtual Size: 266 MB # $"efc4fbcd007f Virtual Size: 584.5 MB # $"1f089cc15e82 Virtual Size: 584.5 MB Tags: ubuntu # #$"5c1088024f94 Virtual Size: 876.2 MB Tags: ubuntu-desktop # # $"afe3aba3e6e0 Virtual Size: 1.06 GB Tags: chrome # !"a97296852f54 Virtual Size: 606.2 MB # # $"4e81a0cd7256 Virtual Size: 606.2 MB Tags: ruby # !"c2b10e69958d Virtual Size: 596.8 MB # # $"0a422c0cdf16 Virtual Size: 596.8 MB Tags: redis # $"9f3000270ba2 Virtual Size: 643.8 MB # $"4b49b0b7aa4c Virtual Size: 643.8 MB # $"1535da87b710 Virtual Size: 660.8 MB Tags: nodejs

Slide 15

Slide 15 text

Dockerfile • Images are created through Dockerfiles • Simple script that prepares the system to run the app

Slide 16

Slide 16 text

Dockerfile FROM eljojo/golang-docker
 
 WORKDIR /app
 
 RUN git clone https://github.com/eljojo/shouldidothat.git .
 RUN go get -d
 RUN go build -o shouldidothat
 
 CMD ["/app/shouldidothat", "-c", "/etc/ shouldidothat/conf.json"]

Slide 17

Slide 17 text

Container • Instance of Docker Image • Has it’s own private IP • You can map folders in host to folders in container

Slide 18

Slide 18 text

Demo

Slide 19

Slide 19 text

Registries • Like Git but for Docker Images • The Docker Index will host your public images for free

Slide 20

Slide 20 text

CoreOS

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

Thanks!

Slide 26

Slide 26 text

github.com/eljojo/altoids