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
160
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
29
I Didn't Know Laravel Could Do That!
jimbojsb
4
880
Make It Searchable (Midwest PHP 2018)
jimbojsb
1
420
High Availability PHP (Nomad PHP January 2018)
jimbojsb
1
170
Things Your Application Does When You're Not Looking (PHP Serbia 2017)
jimbojsb
0
270
Containerizing PHP Applications (Lone Star PHP 2017)
jimbojsb
2
320
Composing PHP Applications with Middleware (PHP World 2016)
jimbojsb
0
190
Containerizing PHP Applications (PHP World 2016)
jimbojsb
0
210
Just-In-Time Software Manufacturing (True North PHP 2016)
jimbojsb
1
250
Other Decks in Technology
See All in Technology
プラットフォームエンジニアリングはAI時代の開発者をどう救うのか
jacopen
7
3.9k
Everything Claude Code を眺める
oikon48
13
7.9k
ソフトバンク流!プラットフォームエンジニアリング実現へのアプローチ
sbtechnight
1
200
A Casual Introduction to RISC-V
omasanori
0
400
「通るまでRe-run」から卒業!落ちないテストを書く勘所
asumikam
2
210
CyberAgentの生成AI戦略 〜変わるものと変わらないもの〜
katayan
0
280
ガバメントクラウドにおけるAWSの長期継続割引について
takeda_h
2
5.3k
Mitigating geopolitical risks with local-first software and atproto
ept
0
120
Keycloak を使った SSO で CockroachDB にログインする / CockroachDB SSO with Keycloak
kota2and3kan
0
160
TypeScript 7.0の現在地と備え方
uhyo
7
1.8k
ReactのdangerouslySetInnerHTMLは“dangerously”だから危険 / Security.any #09 卒業したいセキュリティLT
flatt_security
0
320
形式手法特論:SMT ソルバで解く認可ポリシの静的解析 #kernelvm / Kernel VM Study Tsukuba No3
ytaka23
1
580
Featured
See All Featured
The Invisible Side of Design
smashingmag
302
51k
How STYLIGHT went responsive
nonsquared
100
6k
Site-Speed That Sticks
csswizardry
13
1.1k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
830
Large-scale JavaScript Application Architecture
addyosmani
515
110k
The Spectacular Lies of Maps
axbom
PRO
1
630
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.1k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
86
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
460
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
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