Å·±¦ÓéÀÖ

Jump to ratings and reviews
Rate this book

Docker for Rails Developers

Rate this book
Docker does for DevOps what Rails did for web development—it gives you a new set of superpowers. Gone are “works on my machine� woes and lengthy setup tasks, replaced instead by a simple, consistent, Docker-based development environment that will have your team up and running in seconds. Gain hands-on, real-world experience with a tool that’s rapidly becoming fundamental to software development. Go from zero all the way to production as Docker transforms the massive leap of deploying your app in the cloud into a baby step.

180 pages, ebook

Published October 7, 2018

15 people are currently reading
50 people want to read

About the author

Rob Isenberg

2Ìýbooks2Ìýfollowers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
27 (42%)
4 stars
30 (46%)
3 stars
7 (10%)
2 stars
0 (0%)
1 star
0 (0%)
Displaying 1 - 17 of 17 reviews
Profile Image for Austin.
117 reviews2 followers
March 11, 2019
It's easy to find documentation online about specific Docker functionality. What's not so readily available--and what Docker for Rails Developers provides--is a big-picture view of goals and strategies when containerizing a Rails app, combined with example Docker commands and configurations that can make it happen. In other words, this book both shows how to do it and (most importantly to me) explains why.

My only complaint is that not very much time is spent discussing how to make Dockerized Rails apps truly production-robust; most time is spent on setting up the Rails-in-Docker development environment. As the book mentions at the end, production Rails environments will likely need to handle database replication and load-balancing in a more sophisticated manner than used in the example apps.
Profile Image for Felipe Tovar.
5 reviews
February 20, 2025
Good book, but outdated

The book has solid foundations, and we can still follow the tutorial and get a running Docker instance. However, it’s really outdated, especially on the Rails side.
12 reviews1 follower
May 13, 2021
Came a bit late to finish reading it, but it was totally worth.

The concepts and the purposes of the book don't change that much, despite these technologies do enormously.

The author takes care of giving any background and explanations needed to overcome the content of every chapter, leaving you with no doubts about why you're doing X thing, why is better to do Y and/or why not to do Z.

Nice writing, and I really appreciate the last chapter. After giving you enough knowledge to get things done, it invites you to keep learning.
Profile Image for Travis.
24 reviews1 follower
October 20, 2019
I started this book as someone who has dealt with Docker in the past but never really learned it. I had been told by numerous people that it is very useful and a good tool to learn. Both companies that I have worked at in my short career so far have had Docker but neither used it very religiously in development. So I knew a handful of commands but not how or why they worked and I didn’t use them often enough to care to dive deeper. This all changed when I started to do some work across two teams and the environments from each project started to conflict in really weird ways. It was at this moment that I decided I had better learn Docker and I grabbed this book from the shelf at work. Yes, they already had it and yes I had not taken the opportunity to read it. Sue me. We all have our flaws.

So if you are like me and you have flaws and you have a little bit of experience with Docker but want to learn the ins and outs so you can use it more proficiently then this is a great book for you! And if you can get your work to pay for it even better. Honestly as a Junior Developer I read the book but only skimmed the last 30% because it was dedicated to Deployment and unless you work at a startup you will probably never have to deal with setting up and deploying your app to AWS or Azure. But the other 70% was jam packed full of well written, detailed, engaging information that I found very useful and easy to digest. It is very hands on so be prepared to read this book with your laptop open and your terminal ready. You go through the whole process of creating a rails app with a javascript frontend and connecting redis and postgres, all without installing any of them on your machine. Go Docker! Rob goes into pretty fine detail on every command that he gives you, what is does, and why you are doing it.
It is a pretty quick read, even if you are following along with all the exercises and very much worth it. I recommend it to anyone who is new to Docker or has just dipped their toes in and wants to learn more.
Profile Image for Navjeet Singh.
4 reviews7 followers
Currently reading
February 6, 2020
Great author! I love Rob's ability to explain difficult things. He gets into the "why" to help build a strong foundation and understanding. For example why you need to start rails with -b 0.0.0.0 has a seemingly innocent answer, but those diagrams showing actual port mappings is a blessing for visual learners. On the content itself, I do agree with Austin I kept yearning for more on production related topics.
5 reviews1 follower
July 22, 2019
Without any doubts I'll rate this book with 5 stars.
Background about me while reading this book: I've had some Rails background (still not an expert thought), and Docker basic knowledge (I could do some stuff with Docker, but it was rather because I got used to using them on the project, rather than seeking for a solutions myself). This was just enough to get my hands on the book and benefit from reading it. You won't get bored with all the stuff that is happening in the Docker's background (as it wouldn't even fit in a 200-page book) and that you would probably soon forget, instead the book is structured in a very reader-friendly way, focusing more on real action and it does not introduce to many new things in one chapter.

A friend described this book to be action-centered - and it really is. All of the things introduced in the book are based on a real (but rather simple) example, but I would agree with the author, that once you understand the pattern and the flow - you can use image of any external service and use it instead the ones presented in the examples. It's good to have such a script in front of you anyway, as in most of the cases you can just literally copy and paste the code present in the book to for instance get a redis or database service up and running within seconds (ok, minutes for first few tries)!

Another positive about this book is that you move in a well-known Rails commands and only adding Docker functionalities to it. That makes learning much easier, compared to watching/reading tutorials or books with a language you don't know, which all summed together makes you wonder if this is docker-specific option or just a feature of that language.

What really struck me, was that many of the commands and patterns shown in the book are present in real commercial projects all around the web, which means you are NOT learning just some academic stuff that no one uses :)

Docker is a really huge tool, the book does not cover all of the subjects, but you are not left alone - last chapter is filled with suggestions how you can develop you docker-skills further!

Second part of the book is devoted to a production environment, and it was not the purpose of me buying the book in my case, but it's also worth reading and understanding. But truth be told - based on what I've learned I wouldn't be able to set a proper, reliable and safe production env for a bigger app - but I was able to do so for a development environment (maybe just because the risk of a failure is smaller here, and in case something breaks you don't loose that much)

I'll add a warning though (author actually states that in the book, but many developers think otherwise) - Docker is not a solution for every single case. I've tried to introduce full Docker development environment in a project with a long history, and I must admit, that `alpha` version that I've prepared is not as performant as its `regular` sibling - but is still a great alternative for a people wanting to check something on their local machines without having to bother with all of the strange (and oftern stale and oooold) dependencies!
Profile Image for Bennie.
65 reviews2 followers
March 30, 2020
After many outdated and poorly-written tutorials on getting started with Docker, this book was the one that got me over the hump and (somewhat) comfortable with Docker, at least at a base level. The author does their best to make you aware of where issues may occur. Regardless, I still spent more time Googling configuration and platform-specific issues. I think that's just going to happen with Docker, no matter how well-written the material is.

I would have appreciated more time spent on actually tuning your Docker image for production (secret management, multi-stage builds, database resiliency) instead of focusing so heavily on deployment since the deployment process is going to become outdated more quickly than the rest of the book. That said, the "next steps" chapter does at least provide links to the subjects I listed, so you aren't completely left hanging.

Also, if you start with Rails 6, Webpacker is a requirement now, so when setting up your code the first time, just skip ahead to the JavaScript parts and get that set up so that you can follow the remainder of the book.

Docker sucks because DevOps sucks. But compared to Capistrano, Ansible, Puppet, and other automation options, Docker is easier, simply because once you have a working docker-compose.yml and Dockerfile, you're in good shape (until you have to update your dependencies).

Overall, if you're doing Rails and have to use Docker, this book will probably help in some way
Profile Image for Patrick Brinich-Langlois.
12 reviews5 followers
February 23, 2023
This book is a tutorial—you need to follow along with it on your computer to get much out of it. It was much more useful than the Docker tutorials I've found on the web in the past. This is because it's focused on the subset of Docker knowledge that's relevant to Rails development (e.g., installing gems, setting up Postgres, and accessing webpages through your browser). It goes slowly and explains the why as well as the how.

Though it came out in 2018 and uses old versions of things (Ruby 2.6, Rails 5), this was only a minor nuisance for the first two-thirds of the book. (Except for Docker, I tried using the versions of things that were specified in the book—you could also try using recent versions, though that seems more fraught.) But the final section—on deploying to production—was borked because it relied on simulating a production environment using Docker Machine, which doesn't exist in recent versions of Docker.

I would've given it 4 stars when it came out, but the bit rot impels me to take it down a notch. A more-recent alternative covering much the same ground (excepting the useless section on deployment) is Avdi Grimm's graceful.dev course "Reproducible Development with Containers."
Profile Image for Ignacio Alonso.
10 reviews
June 2, 2020
The book makes a really good introduction into Docker and it's related tools but lacks a lot of updates on the latest changed both to Rails and to Docker.

Starting from the first chapter it becomes really challenging to follow up with the outdated instructions since you need to install webpacker and yarn too and so I had to resort to googling. In the end and after a lot of headaches I was able to finish it.

When I buy tutorials I expect to have a smooth ride when following up on instructions and this is definitely not the case. There's a big gap in the market for a tutorial that takes into account all the intricacies of the latest Rails development processes and tools and merges it with Docker but this book lacks that.

If you want a challenging approach with outdated rails (5.2) but great concept explanation then this is it.
3 reviews
June 30, 2019
This book is a great introduction to Docker. After reading it, I feel I have a good overview of Docker concepts and how to take advantage of them on both development and production environments. After explaining some core concepts in the beginning, the book progresses as an extended tutorial where every chapter builds on the previous ones. In addition, I really author's writing style which is quite clear and explains every decision in a robust way. To sum up, I strongly recommend this book for any Ruby/Rails developer that wants to dive into Docker for first time, as well as for those that have already struggled with Docker but found themselves disorientated.
Profile Image for David Fulmer.
490 reviews7 followers
February 10, 2023
This is an excellent introduction to Docker. While the app which is developed in the book is a Rails app, the focus is really on Docker and how to use it. It’s a great introduction to containers and images and shows you how to set them up and use them. The examples in the book are very easy to follow along with and I did not experience the large volume of problems that I sometimes do with programming books, although I did experience a few hiccups. I would recommend this book for someone who wants to learn what Docker is and how to use it.
590 reviews11 followers
June 9, 2019
A great introduction to Docker for Rails developers. You learn all the necessary steps to go from your development environment with a single image to the full-blown system with dedicated images for your database, your Redis server up to your headless browser testing. With all those parts in place, it explains the basics of K8s and all the additional parts your production management tools must handle (from auto-start to multiple instances for load balancing).
Profile Image for Alex Fürstenau.
190 reviews14 followers
November 5, 2018
If you want to develop rails with docker, this book is for you.
I read it on my kindle (the docker config files are a bit hard to read but it's possible)
4 or 5 chapters are still missing. I will read them once they have been written. :-)
In total a good step by step guide to get you started.
17 reviews
May 7, 2019
Good introduction for rails developers who does not have any experience with Docker. It establishes a good foundation for understanding how it works for the Rails framework and what are some particularities.
Profile Image for Toni Dezman.
8 reviews
October 3, 2019
An amazing book for anyone how is just learning Docker. If you are Rails developer you will find invaluable information how to Dockerize your Rails app for development, testing and production.
Profile Image for Tim Tilberg.
9 reviews
Read
August 14, 2020
This book might be well-suited to someone with Rails experience trying to learn Docker. I already had a lot of experience dockerizing Rails apps, and this book didn't offer much new information.
Displaying 1 - 17 of 17 reviews

Can't find what you're looking for?

Get help and learn more about the design.