Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Docker in Production (Docker Austin March 2015)
Search
Josh Butts
March 05, 2015
Technology
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
51
I Didn't Know Laravel Could Do That!
jimbojsb
4
920
Make It Searchable (Midwest PHP 2018)
jimbojsb
1
450
High Availability PHP (Nomad PHP January 2018)
jimbojsb
1
180
Things Your Application Does When You're Not Looking (PHP Serbia 2017)
jimbojsb
0
300
Containerizing PHP Applications (Lone Star PHP 2017)
jimbojsb
2
350
Composing PHP Applications with Middleware (PHP World 2016)
jimbojsb
0
210
Containerizing PHP Applications (PHP World 2016)
jimbojsb
0
240
Just-In-Time Software Manufacturing (True North PHP 2016)
jimbojsb
1
280
Other Decks in Technology
See All in Technology
日本AIベンチャーレポート2026
kentarofujii
0
240
Teaching Python with three kinds of AI
reuven
0
120
Codex を使った障害対応机上演習の実際
orgachem
PRO
0
360
E2Eってつらくないですか?E2Eの管理コストを下げる手段とその実践
akaboshinit
1
430
アカウント統制の健康診断
kenichinakamura
1
200
Vue.jsのGitHubから学ぶ意思決定
yut0naga1_fa
1
290
AI時代、つくる力を自分たちの手に。 ──電通×KAG、アジャイルとAI駆動開発で挑む開発の変革
yuukiyo
3
390
AI駆動開発におけるハーネスエンジニアリングの勘所
tsukuboshi
1
790
正解のない研修に放り出されて / Being thrown into a training program with no right answers
ohnoeight
1
150
Metadata - Section 2: Simple Metadata & Meta Tags
mohab1
0
140
DevelopersIO2026 -バックアップは“消されないこと”が9割-
yoshida0129
0
410
Adversary Infrastructure Hunting101
disconinja
0
160
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
740
Building an army of robots
kneath
307
47k
Site-Speed That Sticks
csswizardry
13
1.6k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
850
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
580
Facilitating Awesome Meetings
lara
57
7.2k
What the history of the web can teach us about the future of AI
inesmontani
PRO
2
750
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
410
Skip the Path - Find Your Career Trail
mkilby
1
260
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
Making the Leap to Tech Lead
cromwellryan
135
10k
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