Roel Bondoc

Software Engineer at Wave

Read this first

Starting a new Rails project using Docker

If you’ve been considering using and learning Docker for a while, I highly suggest to just do it. It is a great way to adhere to the 12 Factor App methodology. Docker is a method of containerization, this gives developers an easy way to develop in the exact same environment that your production system will be running. If you are just starting off with Docker, it can be a daunting experience, especially if you are use to building conventional Rails applications. Hopefully this blog post can get you started.


Before you can start any rails development, you’ll need a rails app. With Docker, you will first need to “bootstrap” your environment to gain access to the rails executable to initialize a new application. The following Dockerfile defines a new image to be built from ruby:2.4.1 which is derived from a basic Debian image. In our example, /app will be used as the directory

Continue reading →

Updating the Gemfile while running Rails in a Docker container

Running Rails under Docker is a pretty new concept for some. It is understandable since Rails relies heavily on convention. A lot of patterns performed while developing are well established in the community. It’s easy to become accustomed to doing things “just because that’s how it’s always been done”. This blog post is the first in a series that hopes to untangle some of the issues you may experience when transitioning to Docker.

One of the most simplest tasks a Rails developer (or any Ruby dev for that matter) performs is to update the Gemfile. It seems like such a trivial task, yet its very easy to trip yourself up without having a deeper understanding of how Docker works.


An important concept one must keep in mind while working with Docker is the utilization of Layers. For each step in a Dockerfile, a layer is stored that is built on top of the previous. This is relevant to

Continue reading →

Rubymotion and Apple TestFlight

Apple finally released TestFlight and now allows up to 1000 beta tester to be invited to test your app. Before then, I’ve been using the original TestFlight service. With Rubymotion setting up the original TestFlight service has been pretty simple wrt sending out builds. However, now that I finally got my feet wet with Apple’s TestFlight, the experience is much different.

Thinking nothing of the process and without any research, I decided to just jump right in. Having successfully distributed apps via the original TestFlight, I thought I would be good to go.

$ bundle exec rake archive:distribution

This was my first mistake. There are couple things you need to do before creating your archive. Apple has some good documentation that outlines the process for using their testflight: Beta Testing The App. One of the important thing to note here is that I missed was :

  • Generate a new App

Continue reading →