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
Deploying Python (without Docker!)
Search
Nylas
December 02, 2015
Technology
0
310
Deploying Python (without Docker!)
Christine Spang @ SF Python Holiday Party 2015
Nylas
December 02, 2015
Tweet
Share
More Decks by Nylas
See All by Nylas
Switching Off to Switch On!
nylas
1
91
Why Observability Matters
nylas
0
420
Billions of Emails Synced with Python
nylas
0
270
Profiling Python in Production
nylas
1
220
Debugging Python using GDB
nylas
0
59
Plugins with React & Challenges with Data
nylas
0
100
Space City JS — Using Electron & React to Build N1
nylas
0
100
Waffle JS: Desktop Apps with Electron, React, & Observables
nylas
0
430
Electron, Node, and the New Desktop @ SFNode
nylas
0
330
Other Decks in Technology
See All in Technology
#phpconkagawa レガシーコードにもオブザーバビリティを 〜少しずつ始めるサービス監視〜
yamato_sorariku
0
560
データ基盤を支える技術
chanyou0311
5
3k
20240509 CloudWatch でいろいろなものを監視してみよう
masaruogura
1
120
「できる!」を増やすGitHub Copilot活用法 / How to use GitHub Copilot to expand your possibilities
sansan_randd
1
240
知識と実践を紡ぐGenAI / Connecting Knowledge and experience with GenAI
aki_moon
2
180
OPENLOGI Company Profile for engineer
hr01
1
2.2k
本番環境で Cloudflareを 使ってみた話
miu_crescent
2
130
QAエンジニアが伝えたい品質保証の羅針盤 / Compass for Quality Assurance
mii3king
2
330
データ分析力を高めるSQL研修サービス『SQL Everyone』
hikarut
1
390
YJIT Makes Rails 1.7x faster / RubyKaigi 2024
k0kubun
3
480
NewSQL Landscape
oracle4engineer
PRO
5
3.2k
Prisma ORMを2年運用して培ったノウハウを共有する
tockn
19
5.1k
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
45
9.8k
Statistics for Hackers
jakevdp
790
220k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
660
120k
Visualization
eitanlees
137
14k
Teambox: Starting and Learning
jrom
128
8.4k
We Have a Design System, Now What?
morganepeng
43
6.8k
Producing Creativity
orderedlist
PRO
338
39k
Done Done
chrislema
178
15k
Thoughts on Productivity
jonyablonski
60
3.9k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
1
130
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
123
39k
Transcript
Deploying Python Christine Spang @spang
[email protected]
…without Docker!
• Stable, reliable, low maintenance • Bundles all Python dependencies
• Fast and painless to deploy • Easy to roll back to any version • …across hundreds of servers! Our deployment system
Debian Packages (the original containers)
Deployment flow S3 Python & requirements.txt Git Repo Debian Package
Jenkins CI $ ./deploy-it Production Fleet
• built by Spotify in ’13 (thanks!!!) • Embeds a
virtualenv in a Debian package (.deb) • https://github.com/spotify/dh-virtualenv • https://github.com/nylas/make-deb dh-virtualenv
• we use git SHAs for version #s • no
debian version #s to bump to release! • we don’t maintain an internal apt server • deploy script installs using dpkg Versioning
Why not Docker?
• Same benefit using simpler, stabler tools • We only
run a handful of services (not hundreds) • Don’t have to change any development workflow • debs+VMs work well for our level of complexity Why .deb instead of Docker?
Python 2.7 + .deb == ULTIMATE STABILITY!
Want to read more? Christine Spang
[email protected]
@spang https://nylas.com/blog/packaging-deploying-python/ PS:
We are hiring Python programmers!