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
Josh Butts
March 05, 2015
Technology
0
140
Docker in Production (Docker Austin March 2015)
Josh Butts
March 05, 2015
Tweet
Share
More Decks by Josh Butts
See All by Josh Butts
I Didn't Know Laravel Could Do That!
jimbojsb
4
760
Make It Searchable (Midwest PHP 2018)
jimbojsb
1
320
High Availability PHP (Nomad PHP January 2018)
jimbojsb
1
120
Things Your Application Does When You're Not Looking (PHP Serbia 2017)
jimbojsb
0
220
Containerizing PHP Applications (Lone Star PHP 2017)
jimbojsb
2
270
Composing PHP Applications with Middleware (PHP World 2016)
jimbojsb
0
140
Containerizing PHP Applications (PHP World 2016)
jimbojsb
0
170
Just-In-Time Software Manufacturing (True North PHP 2016)
jimbojsb
1
200
Containerizing PHP Applications (True North PHP 2016)
jimbojsb
0
190
Other Decks in Technology
See All in Technology
技術的負債を「戦略的投資」にするためのPdMとエンジニアの連携と実践
satomino
4
860
Type Challengesに新しい問題を追加して Type ChallengesのMaintainerになった話
ysknsid25
3
320
DataEngineeringとCloudNativeの今と未来
foursue
0
240
VueUseから学ぶ実践TypeScript #TSKaigi #TSKaigi2025
bengo4com
1
340
インフラからSREへ
mirakui
20
7.9k
激動の一年を通じて見えてきた「技術でリードする」ということ
ktr_0731
8
8.6k
The PyArrow revolution in Pandas
reuven
0
130
ホワイトボックス& SONiC アーキテクチャ(全体像) - SONiC Workshop Japan 2025
ebiken
PRO
1
450
golang-migrate VS Atlas !? 技術選定のポイントと学び ~DBマイグレーションツール選定の実例を通して~ / golang-migrate vs Atlas ! What is the point of technology selection and what you can learn from the examples of DB migration tool selection?
nttcom
0
120
「祝」Desktop Linux 元年 2025年度版
rlysleepynick
0
110
4月15日の AZ 障害をテクサポの中の人目線で振り返ってみる
kazzpapa3
3
190
GrafanaをClaude DesktopからMCPで触ってみた
hamadakoji
0
1.3k
Featured
See All Featured
Visualization
eitanlees
146
16k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Statistics for Hackers
jakevdp
799
220k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
Automating Front-end Workflow
addyosmani
1370
200k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Rails Girls Zürich Keynote
gr2m
94
13k
Balancing Empowerment & Direction
lara
0
49
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.3k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
52
2.7k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
24
2.8k
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