25
Docker Practical Use Cases Alexei Yuzhakov

Docker Practical Use Cases

Embed Size (px)

Citation preview

Page 1: Docker Practical Use Cases

Docker Practical Use Cases

Alexei Yuzhakov

Page 2: Docker Practical Use Cases

Docker?!• Buzz word• No clear understanding • Rarely used for dev & testing use cases• You apps deployment

Page 3: Docker Practical Use Cases

Installation• Docker Toolbox • Kitematic

Page 4: Docker Practical Use Cases

Use Case: Different Versions

• LAMP app• MySQL depends on Linux distro• Different versions of MySQL

Page 5: Docker Practical Use Cases

Use Case: Different Versions

• MySQL 5.5• MySQL 5.6• MySQL 5.7• MariaDB 10.1

Page 6: Docker Practical Use Cases

Use Case: Different Versions

• docker run … -d mysql:5.5• docker run … -d mysql:5.6• docker run … -d mysql:5.7• docker run … -d mariadb:10.1

Page 7: Docker Practical Use Cases

Use Case: PHP 7

• Find problems• Fix code• Fix unit tests

Page 8: Docker Practical Use Cases

Use Case: PHP 7

• docker run –it –v `pwd`:/app php:7 bash • Container as playground• PHP 7 vs. PHP 5.6

Page 9: Docker Practical Use Cases

Use Case: Similar Environment

• Ubuntu 12.04 & Travis CI• docker run -it ubuntu:12.04 bash• 58 sec for 1st time• <1 sec for the next time

Page 10: Docker Practical Use Cases

Use Case: Build Farm

• Local build farm• Jenkins• TeamCity• Buildbot

Page 11: Docker Practical Use Cases

Use Case: Tools Evaluation

Page 12: Docker Practical Use Cases

Use Case: Quick Install

Page 13: Docker Practical Use Cases

More Use Case

• …• Your stories here

Page 14: Docker Practical Use Cases

Issues & Tricks

• Docker container != VPS• Process (life cycle)• No SSH• docker exec -it <CT-ID> bash

Page 15: Docker Practical Use Cases

Issues & Tricks

• No connection to Docker daemon

Page 16: Docker Practical Use Cases

Issues & Tricks

• docker version• VirtualBox machine status• eval "$(docker-machine env)"

Page 17: Docker Practical Use Cases

Issues & Tricks

Page 18: Docker Practical Use Cases

Issues & Tricks

• Container changes• Environment variables• Port-mapping• Volume mapping• Container re-creation

Page 19: Docker Practical Use Cases

Issues & Tricks

• Image docs

Page 20: Docker Practical Use Cases

Issues & Tricks

Page 21: Docker Practical Use Cases

Issues & Tricks

• docker run …• docker commit• docker images• docker run …

Page 22: Docker Practical Use Cases

Issues & Tricks

• Dockerfile & docker build• Mount points• Main process selection• Privileged operations• ...

Page 23: Docker Practical Use Cases

Conсlusion

• “Must have” tool• 100,000+ ready-to-use images• A lot of use cases

Page 24: Docker Practical Use Cases

Thank You!

Page 25: Docker Practical Use Cases

Alexei Yuzhakov

[email protected]://github.com/sibprogrammer

Questions?