Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introduction to Docker
Search
Amjith
April 12, 2014
Programming
8
1.4k
Introduction to Docker
Docker talk at PyCon 2014.
Amjith
April 12, 2014
Tweet
Share
More Decks by Amjith
See All by Amjith
How Netflix does Failovers in 7 minutes
amjith
0
620
Awesome Commandline Tools
amjith
0
470
FuzzyFind
amjith
0
78
Awesome Command Line Tools
amjith
1
140
Modern Command Line
amjith
2
320
Thread Profiling in Python
amjith
7
840
Python Profiling
amjith
3
330
Statistical Thread Profiler
amjith
1
130
Debugging Live Python Web Applications
amjith
8
1.7k
Other Decks in Programming
See All in Programming
テストコード文化を0から作り、変化し続けた組織
kazatohiei
2
1.5k
Security_for_introducing_eBPF
kentatada
0
110
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
690
モバイルアプリにおける自動テストの導入戦略
ostk0069
0
110
クリエイティブコーディングとRuby学習 / Creative Coding and Learning Ruby
chobishiba
0
3.9k
103 Early Hints
sugi_0000
1
220
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
300
あれやってみてー駆動から成長を加速させる / areyattemite-driven
nashiusagi
1
200
Zoneless Testing
rainerhahnekamp
0
120
nekko cloudにおけるProxmox VE利用事例
irumaru
3
420
バグを見つけた?それAppleに直してもらおう!
uetyo
0
180
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
kutakutat
1
540
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
KATA
mclloyd
29
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
Why Our Code Smells
bkeepers
PRO
335
57k
Become a Pro
speakerdeck
PRO
26
5k
The Invisible Side of Design
smashingmag
298
50k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Music & Morning Musume
bryan
46
6.2k
Designing for Performance
lara
604
68k
Transcript
@amjithr Intro to Docker PYCON ▪ Saturday, April 12, 14
@amjithr Hi Saturday, April 12, 14
Saturday, April 12, 14
@amjithr Why? Celery Saturday, April 12, 14
@amjithr WHAT’S Docker? Not Pants Saturday, April 12, 14
@amjithr DotCloud -> Docker Inc Jan Written in Go Active
community History Saturday, April 12, 14
@amjithr “Docker is an open-source engine that automates the deployment
of any application as a lightweight, portable, self-sufficient container that will run virtually anywhere*.” Saturday, April 12, 14
@amjithr CHROOT BSD JAILS SOLARIS ZONES What? Saturday, April 12,
14
@amjithr Linux Containers AUFS Git like versioning REST API What?
Saturday, April 12, 14
@amjithr What? Bare Metal Host OS Hypervisor Guest OS Libs
AppA Guest OS Libs AppB Guest OS Libs AppC Bare Metal Host OS D o c k e r Libs Libs App A App A’ App B App B’ VM Container Saturday, April 12, 14
@amjithr Lightweight Isolated Instances Faster than VMs Why? Saturday,
April 12, 14
@amjithr docs.docker.io - Installation instructions OS X - boot docker
(VM) + docker client Setup OS X VBox linux C0 C1 client Linux C0 C1 client Saturday, April 12, 14
@amjithr Docker Daemon - Server Docker Client - Client Terminology
Saturday, April 12, 14
@amjithr Terminology Daemon Linux TCP Socket Client Client Linux TCP
Client OS X TCP Saturday, April 12, 14
@amjithr DEMO Saturday, April 12, 14
@amjithr Images - Read-only snapshot Containers - Instantiation of an
Image Terminology Saturday, April 12, 14
@amjithr Terminology Master Copy Photocopy B + Margin Notes Photocopy
A + Highlights Photocopy C Saturday, April 12, 14
@amjithr Terminology IMAGE Lib Bin Env Vars Files ContainerB Lib
Bin Env Vars’ Files ContainerA Lib Bin Env Vars Files ContainerC Lib Bin Env Vars Files’ Saturday, April 12, 14
@amjithr Registry - PyPI for docker images Repository - Projects
in the Registry Terminology Saturday, April 12, 14
@amjithr docker pull <image-name> docker images docker run <image-name> <command>
docker ps docker logs Basics Saturday, April 12, 14
@amjithr Dockerfile - Series of commands Automation Saturday, April 12,
14
@amjithr Dockerfile FROM base ENV TEST_ENV true ADD test_file /
RUN apt-get update RUN apt-get install -y fortune cowsay CMD fortune | cowsay Saturday, April 12, 14
@amjithr Django Port Forwarding docker run -d django-docker Network Saturday,
April 12, 14
@amjithr Django Port Forwarding docker run -d -p host:container django-docker
Network Saturday, April 12, 14
@amjithr Volumes - Mount folders - host/container docker run -v
host_path:container_path django Links - Service discovery through env vars docker run --link mysql:db --name webapp django Misc Saturday, April 12, 14
@amjithr Docker daemon is also a server REST API -
List of images/containers - Create/Start/Stop/Delete containers - Websocket attach - Shipyard REST API Saturday, April 12, 14
Saturday, April 12, 14
@amjithr PERFORMANCE! Saturday, April 12, 14
@amjithr New Relic adapter_cherrypy.py adapter_flup.py adapter_gevent.py adapter_gunicorn.py adapter_meinheld.py adapter_paste.py adapter_waitress.py
adapter_wsgiref.py application_celery.py application_gearman.py component_cornice.py component_piston.py component_tastypie.py coroutines_gevent.py database_dbapi2.py database_mysql.py database_mysqldb.py database_psycopg2.py database_sqlite.py datastore_pymongo.py external_dropbox.py external_facepy.py external_feedparser.py external_httplib.py external_httplib2.py external_pywapi.py external_requests.py external_thrift.py external_urllib.py external_urllib2.py external_urllib3.py external_xmlrpclib.py framework_bottle.py framework_cherrypy.py framework_django.py framework_flask.py framework_pylons.py framework_pyramid.py framework_tornado.py framework_twisted.py framework_web2py.py framework_webpy.py memcache_memcache.py memcache_pylibmc.py memcache_umemcache.py middleware_weberror.py solr_pysolr.py solr_solrpy.py template_genshi.py template_jinja2.py template_mako.py Saturday, April 12, 14
@amjithr New Relic Saturday, April 12, 14
@amjithr Problem Celery Saturday, April 12, 14
@amjithr Solution Celery Saturday, April 12, 14
@amjithr REBUILDING the server is trivial. Cloning a new server
is effortless. Why? DEV PROD Saturday, April 12, 14
@amjithr Solution DEV PROD REGISTRY Saturday, April 12, 14
@amjithr Website: www.docker.io IRC: freenode #docker google groups: docker-user Community
Saturday, April 12, 14
@amjithr THANK YOU! @amjithr Saturday, April 12, 14
Questions? • Promo: http://newrelic.com/pycon • 30 days of Pro. •
Free T-shirt. • In-depth data. Saturday, April 12, 14