Dockerization in the land of Ruby
summary
Argues that one Dockerfile can serve development, CI and production using a multi-stage Dockerfile, and that development should install gems at container runtime with a bundle-in-runtime and a mounted docker volume cache to avoid rebuilding images. Uses docker-compose to orchestrate the four common processes (web, database, worker, redis) and a small bash wait-for-it check. Adds a simple Makefile make setup that hides Docker complexity so new machines boot with one command; provides a public boilerplate repo.
AI-written summary · about
chapters (14)
- 0:00Introduction
- 4:12Who am I
- 12:33Simple Rails
- 13:43Running Tests
- 14:44Constraints
- 16:51Docker File
- 18:30Base Image
- 20:21Install Gems
- 21:43Install in Development
- 24:43Docker Compose
- 26:33Makefile
- 27:41CI
- 29:04Conclusion
- 30:17Developer dilemmas
related talks
40mDeveloping Ruby Applications with Docker
01h 01mShipping Ruby Apps with Docker
01h 00mDocker for development
29mPackaging and Shipping Rails Applications in Docker
07mLightning Talk: How Docker Can Change Rails Deployments
39mContainerizing Local Development... Is It Worth it?
40mContainerized Ruby Applications with Docker
43mServer Infrastructure for Rails in 2016
