Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Docker in Production (Docker Austin March 2015)
Search
Josh Butts
March 05, 2015
Technology
0
150
Docker in Production (Docker Austin March 2015)
Josh Butts
March 05, 2015
Tweet
Share
More Decks by Josh Butts
See All by Josh Butts
Supercharged_Search_-_Longhorn_PHP_2025.pdf
jimbojsb
0
11
I Didn't Know Laravel Could Do That!
jimbojsb
4
820
Make It Searchable (Midwest PHP 2018)
jimbojsb
1
380
High Availability PHP (Nomad PHP January 2018)
jimbojsb
1
140
Things Your Application Does When You're Not Looking (PHP Serbia 2017)
jimbojsb
0
260
Containerizing PHP Applications (Lone Star PHP 2017)
jimbojsb
2
300
Composing PHP Applications with Middleware (PHP World 2016)
jimbojsb
0
160
Containerizing PHP Applications (PHP World 2016)
jimbojsb
0
200
Just-In-Time Software Manufacturing (True North PHP 2016)
jimbojsb
1
230
Other Decks in Technology
See All in Technology
メッセージ駆動が可能にする結合の最適化
j5ik2o
9
1.7k
命名から始めるSpec Driven
kuruwic
2
650
MAP-7thplaceSolution
yukichi0403
2
190
不確実性に備える ABEMA の信頼性設計とオブザーバビリティ基盤
nagapad
4
9.2k
Pandocでmd→pptx便利すぎワロタwww
meow_noisy
2
1k
SRE視点で振り返るメルカリのアーキテクチャ変遷と普遍的な考え
foostan
2
2.9k
ページの可視領域を算出する方法について整理する
yamatai1212
0
110
TypeScript 6.0で非推奨化されるオプションたち
uhyo
15
5.6k
生成AIシステムとAIエージェントに関する性能や安全性の評価
shibuiwilliam
2
260
マルチドライブアーキテクチャ: 複数の駆動力でプロダクトを前進させる
knih
0
12k
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
970
DDD x Microservice Architecture : Findy Architecture Conf 2025
syobochim
13
6.5k
Featured
See All Featured
Done Done
chrislema
186
16k
Balancing Empowerment & Direction
lara
5
770
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
680
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Into the Great Unknown - MozCon
thekraken
40
2.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Scaling GitHub
holman
464
140k
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