Dockerized app in production? YES WE CAN!!
summary
Argues for splitting services into separate containers so upgrades happen by replacing one container at a time for no downtime; warns that packing init, Postgres, Elasticsearch and supervisors into one image produces zombie processes unless an init/process manager is used. Recommends passing config via environment variables and rendering configs with templates (Jinja/Play) to avoid rebuilding images. Describes CI that builds and tags images per commit, pushes to an on‑prem docker registry, and uses Jenkins to run tests and deploy; this pipeline runs in production at Applause.
AI-written summary · about
chapters (22)
- 0:00Introduction
- 1:03About Applause
- 1:31Topic
- 2:10First approach
- 3:15Dockerfile
- 4:07Multiple processes
- 4:30Init process
- 6:27Multiple zombie processes
- 8:42Multiple containers
- 10:08Why environment variables are a pitfall
- 11:33What can we put into environment variable
- 12:10Template
- 13:09WebConcurrency
- 13:27Docker Process Pool
- 16:17Microservices
- 16:49Darker
- 20:39Agenda
- 20:57Darker Tags
- 22:01Git Workflow
- 23:24Docker Registry
- 26:23Jenkins
- 28:51Recap
related talks
01h 04mPreparing your Dockerised Application for Production
01h 09mDocker in Production
43mDocker: From Development to Production
49mContinuous Delivery at Docker age
40mGoes Beyond CI to Production Scale PaaS with Docker
36mDocker Inside/Out
43mServer Infrastructure for Rails in 2016
16mSimplifying the Journey of Your Containerized Application from Dev to Production
