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
Python Apps and Docker - Matt Wright
Search
PyGotham 2014
August 16, 2014
Programming
0
92
Python Apps and Docker - Matt Wright
An overview of why and how one might use Docker for Python applications
PyGotham 2014
August 16, 2014
Tweet
Share
More Decks by PyGotham 2014
See All by PyGotham 2014
Service Oriented Flask - Randall Degges
pygotham2014
3
210
What Problem Are You Trying to Solve, Anyway? - Alfred Lee
pygotham2014
0
120
Decorators 101: A Gentle Introduction to Functional Programming - Jillian Munson
pygotham2014
3
300
Pretty Pictures Please - Hannah Aizenmann
pygotham2014
0
160
Python and Julia. Why do we need another language? - Dwight J. Browne
pygotham2014
1
380
Weather of The Century - J. Randall Hunt
pygotham2014
0
100
Setting up your Python development environment in IPython - Daniel Kronovet
pygotham2014
0
89
Failing With Grace - Sean O'Connor
pygotham2014
0
99
Caching up and down the stack in Django - James Meickle
pygotham2014
1
93
Other Decks in Programming
See All in Programming
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
500
overlayPreferenceValue で実現する ピュア SwiftUI な AdMob ネイティブ広告
uhucream
0
170
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.4k
Web フロントエンドエンジニアに開かれる AI Agent プロダクト開発 - Vercel AI SDK を観察して AI Agent と仲良くなろう! #FEC余熱NIGHT
izumin5210
3
460
ポスターセッション: 「まっすぐ行って、右!」って言ってラズパイカーを動かしたい 〜生成AI × Raspberry Pi Pico × Gradioの試作メモ〜
komofr
0
1.1k
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
190
高度なUI/UXこそHotwireで作ろう Kaigi on Rails 2025
naofumi
4
3.7k
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
960
iOS 17で追加されたSubscriptionStoreView を利用して5分でサブスク実装チャレンジ
natmark
0
650
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
210
CSC305 Lecture 05
javiergs
PRO
0
210
明日から始めるリファクタリング
ryounasso
0
120
Featured
See All Featured
Designing Experiences People Love
moore
142
24k
Fireside Chat
paigeccino
40
3.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Site-Speed That Sticks
csswizardry
11
890
Large-scale JavaScript Application Architecture
addyosmani
514
110k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
189
55k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
How STYLIGHT went responsive
nonsquared
100
5.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Unsuck your backbone
ammeep
671
58k
Transcript
Python Apps & Docker @pygotham 2014
Matt Wright @mattupstate Software/Ops Engineer @ChatID • Python, Lua, CoffeeScript
• Flask, Prosody, Backbone, Angular Open Source • Author: Flask-Security, Flask-JWT, ... • Contributor: Ansible, Flask • Member: metaflask
What’s all the fuss about?
“... an open platform for developers and sysadmins to build,
ship, and run distributed applications.” http://docker.com/whatisdocker Docker:
Images A stateless, read-only collection of “layers” joined together via
a union filesystem. Containers A stateful instance of an image in which one or more processes are running or have exited Docker: Concepts
Docker: Components Docker Engine A portable, lightweight system level daemon
that manages images and containers Docker Hub A web service for distributing images and enabling automated workflows
Docker Hub Server Docker Engine Docker CLI Containers Images Docker:
Birds Eye View Repository Images Repository Images Repository Images Repository Images
• Development Environments • Application Deployment • Continuous Integration •
Continuous Delivery • Platform-as-a-Service (PaaS) Docker: Use Cases
Tooling Kubernetes Marathon maestro-ng Shipyard fig Platforms Elastic Beanstalk CoreOS
flynn.io deis.io Docker: Landscape SaaS circleci.com shippable.com drone.io quay.io and many more (to come) ...
boot2docker https://coderwall.com/p/fvfjyg
+
Development Environments
• OS • System libraries • Python dependencies • Database,
cache, etc Dev Env: Components
• Constantly change • Never truly consistent • Miscommunication (Ops
vs. Devs) • “Drift” Dev Env: Problems
• README • Stacks (LAMP, XAMP) • Virtual Machines •
Vagrant + (Chef | Puppet | Ansible) Dev Envs: Before
• Easy to change and share • Always consistent •
100% Isolated • Single authority • Production ready! Dev Envs: Docker!
Dockerfile
Testing
Fig $ pip install fig
Production Ready
• Be skeptical of Docker dogma • Keep secrets out
of env vars • Don’t use Docker for everything • Design images carefully Docker Tips
Thank You! mattupstate.com gittip.com/mattupstate github.com/mattupstate twitter.com/mattupstate