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
Docker in Production (Docker Austin March 2015)
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Josh Butts
March 05, 2015
Technology
160
0
Share
Docker in Production (Docker Austin March 2015)
Josh Butts
March 05, 2015
More Decks by Josh Butts
See All by Josh Butts
Supercharged_Search_-_Longhorn_PHP_2025.pdf
jimbojsb
0
35
I Didn't Know Laravel Could Do That!
jimbojsb
4
890
Make It Searchable (Midwest PHP 2018)
jimbojsb
1
430
High Availability PHP (Nomad PHP January 2018)
jimbojsb
1
170
Things Your Application Does When You're Not Looking (PHP Serbia 2017)
jimbojsb
0
280
Containerizing PHP Applications (Lone Star PHP 2017)
jimbojsb
2
330
Composing PHP Applications with Middleware (PHP World 2016)
jimbojsb
0
190
Containerizing PHP Applications (PHP World 2016)
jimbojsb
0
220
Just-In-Time Software Manufacturing (True North PHP 2016)
jimbojsb
1
260
Other Decks in Technology
See All in Technology
分断された OT と IT を繋ぐ架け橋 -Kubernetes が切り拓く 産業用組み込み製品の現在地 -
yudaiono
1
130
いつの間にかデータエンジニア以外の業務も増えていたけど、意外と経験が役に立ってる
zozotech
PRO
0
690
20260515 ログイン機能だけではないアカウント管理を全体で考える~サービス設計者向け~
oidfj
1
840
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
1
120
React Compiler導入の効果と運用の工夫
kakehashi
PRO
3
280
サプライチェーン攻撃への備えについて考えている #湘なんか
stefafafan
1
1.5k
AWS WAFの運用を地道に改善し、自社で運用可能にするプラクティス
andpad
1
570
可視化から活用へ — Mesh化・Segmentation・アライメントの研究動向
gpuunite_official
0
230
ワールドカフェ再び、そしてゴール・ルール・ロール・ツール / World Café Revisited, and the Goals-Rules-Roles-Tools
ks91
PRO
0
180
AIAgentと取り組むKaggle
508shuto
2
420
ECSのTerraformモジュールにコントリビュートした話
harukasakihara
0
250
Purview Endpoint DLP 動かしてみた
kozakigh
1
450
Featured
See All Featured
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
230
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
200
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Optimizing for Happiness
mojombo
378
71k
GitHub's CSS Performance
jonrohan
1033
470k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
Transcript
Docker in Production Josh Butts VP of Engineering
About Me • VP of Engineering, offers.com • Austin
PHP Organizer • NOT A DOCKER EXPERT • Play competitive Skee Ball • github.com/jimbojsb @jimbojsb 2
About Offers.com • We help people save money •
Launched in 2009 • 100k+ line PHP app • Millions of Uniques / Month • 1 DevOps engineer 3
A BRIEF HISTORY Before we start… 4
Production Infrastructure in 2009 5
Production Infrastructure in 2011 6 • 3x m1.large PHP/Nginx
• 3x m1.xlarge MySQL • 1x m1.large “worker” • Route 53 DNS • Cloudfront CDN
Production Infrastructure in 2013 • 5x c3.large PHP/Nginx •
3x 2XL RDS Mysql Multi-‐AZ • 1x m3.xlarge “worker” • 1x m3.4XL “mailer” • Route53 • Cloudfront 7
DOCKER And then we moved to 8
Why Docker? • It’s cool and trendy • Optimize
software/hardware density • Pink sombrero problem • Transient nature of AWS resources • We like the bleeding edge 9
Our Stack 10
Pretty Pictures 11
Some Details • Dockerfiles based on phusion/baseimage • Runit
/ multiprocess • Little to no Fleet or Etcd • Chronos for scheduling • Known-‐port service discovery 12
Issues We’ve Had • Fleet and Etcd are VERY sensitive
to DNS problems • PHP memory_limit vs Marathon limits / cgroups • Containers that need persistence (elastic search) • Sometimes we need to ssh into production 13
What’s Next • Docker for development & CI (currently
vagrant) • Increase usage of Chronos • True auto-‐scaling • Improve metrics / reporting 14
QUESTIONS? Anyone have 15
Links • Mesosphere Digital Ocean cluster create tool https:// digitalocean.mesosphere.com
• Sample PHP app used for Marathon demo https://github.com/jimbojsb/dockeraustin • Quay.io Enterprise Docker Registry https://quay.io/repository/jimbojsb/dockeraustin 16