Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
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
94
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
220
What Problem Are You Trying to Solve, Anyway? - Alfred Lee
pygotham2014
0
130
Decorators 101: A Gentle Introduction to Functional Programming - Jillian Munson
pygotham2014
3
300
Pretty Pictures Please - Hannah Aizenmann
pygotham2014
0
170
Python and Julia. Why do we need another language? - Dwight J. Browne
pygotham2014
1
390
Weather of The Century - J. Randall Hunt
pygotham2014
0
110
Setting up your Python development environment in IPython - Daniel Kronovet
pygotham2014
0
91
Failing With Grace - Sean O'Connor
pygotham2014
0
100
Caching up and down the stack in Django - James Meickle
pygotham2014
1
97
Other Decks in Programming
See All in Programming
connect-python: convenient protobuf RPC for Python
anuraaga
0
410
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
38
26k
sbt 2
xuwei_k
0
290
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
170
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
6
1.3k
【Streamlit x Snowflake】データ基盤からアプリ開発・AI活用まで、すべてをSnowflake内で実現
ayumu_yamaguchi
1
120
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
6
2.2k
How Software Deployment tools have changed in the past 20 years
geshan
0
29k
dotfiles 式年遷宮 令和最新版
masawada
1
760
DSPy Meetup Tokyo #1 - はじめてのDSPy
masahiro_nishimi
1
160
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
3k
非同期処理の迷宮を抜ける: 初学者がつまづく構造的な原因
pd1xx
1
710
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
710
RailsConf 2023
tenderlove
30
1.3k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
We Have a Design System, Now What?
morganepeng
54
7.9k
Scaling GitHub
holman
464
140k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Faster Mobile Websites
deanohume
310
31k
Navigating Team Friction
lara
191
16k
It's Worth the Effort
3n
187
29k
Optimizing for Happiness
mojombo
379
70k
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