Your SlideShare is downloading. ×
Docker - An Introduction
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Docker - An Introduction

160
views

Published on

Talk given at NYLUG

Talk given at NYLUG

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
160
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Docker - An Introduction 10 July 2014 Paul Nasrat
  • 2. Who am I? #include<std/disclaimer.h> Background Package management development Configuration management developent Operations Engineering
  • 3. Who are you?
  • 4. What's this going to be all about? What Why How
  • 5. So what is Docker? Launched March 2013 Popular - Github > 13k stars Active GitHub > 500 contributors, > 9k commits Framework built on container virtualization
  • 6. What is Container Virtualization
  • 7. All this has happened before, and all of it will happen again. Not new
  • 8. So why? Build once Ship Run anywhere
  • 9. Isolated, layered, standardized
  • 10. So why should I care? Ease of use Lightweight Boundary object Application focus Container focus Golden image/Immutable server patterns
  • 11. Why not VMs or Cloud? Speed of iteration Portability Size Utilization (provisioning, support other work loads)
  • 12. How does this work? Linux - many distros cgroups and namespaces Storage - devicemapper, aufs, btrfs, pluggable Execution - libcontainer, lxc, pluggable
  • 13. How does this work init - how does it work? cgroups namespaces
  • 14. Hello world dockerrunbusyboxecho"helloworld" Demo(http://localhost:4200/)
  • 15. What just happened? dockerps Demo(http://localhost:4200/)
  • 16. Docker Terminology Images Container
  • 17. Docker terminology Registry Docker Registry(https://registry.hub.docker.com/)
  • 18. Running an Image as a daemon dockerrun--namenetcat-d-p4444:4444ubuntu:14.04/bin/nc-l4444 date|nc127.0.0.14444 dockerlogsnetcat dockerstopnetcat Demo(http://localhost:4200/)
  • 19. Interacting with a container dockerrun-i-tubuntu:14.04/bin/bash cat/etc/*-release
  • 20. Dockerfile FROM ubuntu:14.04 RUN apt-getupdate RUN apt-get-yinstallredis-server EXPOSE 6379 ENTRYPOINT ["/usr/bin/redis-server"] dockerbuild-tpnasrat/redis. dockerrun--nameredis-d-Ppnasrat/redis dockerportredis Demo(http://localhost:4200/)
  • 21. Interacting with a container dockerrun--rm--linkredis:redis-i-tubuntu:14.04/bin/bash apt-getupdate apt-get-yinstallredis-server serviceredis-serverstop $redis-cli-h$REDIS_PORT_6379_TCP_ADDR $redis172.17.0.33:6379> $redis172.17.0.33:6379>setnylugdocker OK $redis172.17.0.33:6379>getnylug "docker" $redis172.17.0.33:6379>exit Demo(http://localhost:4200/)
  • 22. Thanks Docker Inc NYLUG James Turnbull
  • 23. More info http://www.docker.com/ http://dockerbook.com/ Coming soon!
  • 24. Thank you Paul Nasrat @nasrat(http://twitter.com/nasrat) pnasrat@gmail.com(mailto:pnasrat@gmail.com)