Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Docker
Chris Ortman
University of Iowa
@chriso
chrisortman
Jerry	
  Steele	
  
• Historic	
  2008	
  floods	
  begat	
  epic	
  
cooperation	
  between	
  civic	
  
leaders,	
  busi...
http://j.mp/tc-slack
Docker is Awesome
1. Install and run any application with a single
command
2. GIT for servers
3. Executable setup documentation
4. Isolate d...
Key Components
Registry Image
pull
Container
run
Image
commit
push
Dockerfilebuild
XML CONFIGURATION
Key Component: Registry
Registry is a storage location where you can
pull and push preconfigured images that are
ready to g...
DEMO 1
applications
Homebrew
Boot2docker
–me
“It’s like git, but for servers”
docker run -d --publish 8080:8080 cptactionhank/atlassian-jira
Key Component: Image
Image is a readonly template that contains
your operating system files.
You can create new images by c...
DEMO 2
images
Executable setup documentation
Key Component: Dockerfile
Dockerfile is a Makefile for your image.
–Wayne Mack c2wiki http://c2.com/cgi/wiki?
TestsAreAnExecutableSpecification
“The key advantage of a test set as proposed i...
DEMO 3
rvm-base dockerfile
Isolation
Key Component: Container
Container is your virtualized operating
system.
It uses namespaces, control groups, and
union file...
docker@boot2docker:~$ df -h
Filesystem Size Used Available Use% Mounted on
tmpfs 1.8G 94.5M 1.7G 5% /
tmpfs 1002.1M 324.0K...
DEMO 4
containers, data volumes, and links
What we’ve learned
• Download and run pre-configured applications
• Create images and share them
• Persist data
• Connect c...
• Registry is a storage location where you can pull
and push preconfigured images that are ready to
go.
• Image is a readon...
Registry Image
pull
Container
run
Image
commit
push
Dockerfilebuild
http://j.mp/tc-slack
docker
Questions??
@chriso
chrisortman
Docker cr ineta-20150601
Upcoming SlideShare
Loading in …5
×

Docker cr ineta-20150601

1,106 views

Published on

Talk for CRIneta. Explains how Docker works and why it is so awesome.

Additonal notes http://chrisortman.com/2015/06/02/docker-is-awesome/

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Docker cr ineta-20150601

  1. 1. Docker
  2. 2. Chris Ortman University of Iowa @chriso chrisortman
  3. 3. Jerry  Steele   • Historic  2008  floods  begat  epic   cooperation  between  civic   leaders,  business,  universities,   community  colleges,  and   startups   • Making  “We  Create  Here”   meaningful  &  accessible
  4. 4. http://j.mp/tc-slack
  5. 5. Docker is Awesome
  6. 6. 1. Install and run any application with a single command 2. GIT for servers 3. Executable setup documentation 4. Isolate development environments and tools
  7. 7. Key Components Registry Image pull Container run Image commit push Dockerfilebuild
  8. 8. XML CONFIGURATION
  9. 9. Key Component: Registry Registry is a storage location where you can pull and push preconfigured images that are ready to go. An example is DockerHub, but you can also host your own pretty easily.
  10. 10. DEMO 1 applications
  11. 11. Homebrew Boot2docker
  12. 12. –me “It’s like git, but for servers”
  13. 13. docker run -d --publish 8080:8080 cptactionhank/atlassian-jira
  14. 14. Key Component: Image Image is a readonly template that contains your operating system files. You can create new images by commiting your changes to a container.
  15. 15. DEMO 2 images
  16. 16. Executable setup documentation
  17. 17. Key Component: Dockerfile Dockerfile is a Makefile for your image.
  18. 18. –Wayne Mack c2wiki http://c2.com/cgi/wiki? TestsAreAnExecutableSpecification “The key advantage of a test set as proposed in TestFirstDesign as a specification is that it is unambiguously verifiable against the code. ”
  19. 19. DEMO 3 rvm-base dockerfile
  20. 20. Isolation
  21. 21. Key Component: Container Container is your virtualized operating system. It uses namespaces, control groups, and union file systems to provide isolation for applications.
  22. 22. docker@boot2docker:~$ df -h Filesystem Size Used Available Use% Mounted on tmpfs 1.8G 94.5M 1.7G 5% / tmpfs 1002.1M 324.0K 1001.8M 0% /dev/shm /dev/sda1 18.2G 6.8G 10.4G 40% /mnt/sda1 cgroup 1002.1M 0 1002.1M 0% /sys/fs/cgroup none 464.8G 299.6G 165.1G 64% /Users /dev/sda1 18.2G 6.8G 10.4G 40% /mnt/sda1/var/lib/docker/aufs none 18.2G 6.8G 10.4G 40% /mnt/sda1/var/lib/docker/aufs/mnt/ 431abd58c10b5560fee38b4dab8f6121f2f5b3f9475298e90b184caa423dd369 none 18.2G 6.8G 10.4G 40% /mnt/sda1/var/lib/docker/aufs/mnt/2342b6aa2e395dd9dd root@2342b6aa2e39:/# df -h Filesystem Size Used Avail Use% Mounted on none 19G 6.9G 11G 40% / tmpfs 1003M 0 1003M 0% /dev shm 64M 0 64M 0% /dev/shm /dev/sda1 19G 6.9G 11G 40% /etc/hosts tmpfs 1003M 0 1003M 0% /proc/kcore tmpfs 1003M 0 1003M 0% /proc/timer_stats daemon@431abd58c10b:/var/local/atlassian/jira$ df -h Filesystem Size Used Avail Use% Mounted on none 19G 6.9G 11G 40% / tmpfs 1003M 0 1003M 0% /dev shm 64M 0 64M 0% /dev/shm /dev/sda1 19G 6.9G 11G 40% /etc/hosts
  23. 23. DEMO 4 containers, data volumes, and links
  24. 24. What we’ve learned • Download and run pre-configured applications • Create images and share them • Persist data • Connect containers
  25. 25. • Registry is a storage location where you can pull and push preconfigured images that are ready to go. • Image is a readonly template that contains your operating system files. • Dockerfile is a Makefile for your image. • Container is your virtualized operating system.
  26. 26. Registry Image pull Container run Image commit push Dockerfilebuild
  27. 27. http://j.mp/tc-slack docker
  28. 28. Questions?? @chriso chrisortman

×