Keeping Ruby on Rails on Track with Containers
Reading time: Less than a minute
This entry is part one of the series: 2018 Rails Community Survey Results
Part 2: Code Quality Matters in Rails
We recently released the results of our 2018 Ruby on Rails community survey. Over the next week, we'll be highlighting some of the interesting data this survey of the community uncovered.
58% of Ruby on Rails developers surveyed in our 2018 Ruby on Rails survey indicated that they're currently using containers for development and/or production environments.
Diving a little deeper, we're seeing 44% of Rails developers are using Docker as their container tool of choice. There are a number of benefits when you use Docker.
If you've ever worked on a number of Ruby on Rails applications, in parallel, on your development machine – where each of them may run on different versions and rely on an array of dependencies (also on different versions). While we can benefit from tools like rbenv, bundler, and homebrew – it doesn't always work out so well.
With tools like Docker, we're able to run applications with their own dependencies locked to their own image. This helps us save time getting a developer up-to-speed with a new-to-them Rails application as they only need to build and spin up the Docker image to get to work.
Whereas, historically, every developer would need to run through a setup process by following some documentation that may or may not always be consistently accurate.
At the moment, not all of our own client projects are running on Docker but it is the direction that our team is moving toward.
Taking this a step further, a handful of our client applications are using Docker to run their staging and production environments. When we deploy updated versions, rather than just rely on having Capistrano deploy the code to servers, we're able to spin up new Docker images with the updated code and we have the existing containers be decommissioned.
Amongst the 58% of Ruby on Rails developers using containers, we're seeing that Kubernetes is being used by nearly 12% of Rails developers. This isn't a tool that we've used at Planet Argon, yet -- but are looking to research further to assist with the orchestration of our production environments.
If you're finding yourself in the 41% of Ruby on Rails developers that are not using containers but are curious about them – here are a few links to get you started.
- Using Docker for Rails Development by Laura Frank
- Deploying Rails with Docker, Kubernetes and ECS by Pablo Acuña
- Pre-order: Docker for Rails Developers by Rob Isenberg
Click below to view more insights from our 2018 survey of the Ruby on Rails community.