The CI/CD and DevOps Blog

Learn about various tried-and-tested strategies that will help you ship code faster

Announcing: Integration with and private Docker registries



We have significantly updated the Shippable platform with several new features. Hence most of the content in this blog is deprecated. For the latest information, refer to our documentation and/or open a support issue, if you have questions.



We are super excited to announce support for integration on the Shippable platform! Many of you requested this and we agree, it's a great service. offers a wonderful user experience with detailed information about your images. And, of course, Shippable provides you multiple options to tag images generated via Shippable CI/CD, making it easy to trace those images from the registry back through all activities that occurred to build and validate them. While we were at it, we also added support to integrate any private registry on Shippable. 

This post will walk you through how to integrate your Shippable Account with and push and pull images through

Containerized Microservices with Docker & NodeJS


Your application has been chugging along nicely when suddenly it grinds to a halt, again! After debugging thousands of lines of code you finally found the one tiny piece that caused it, but you have to reinitialize your whole service to fix it. How can you avoid this painful process every time your application inevitably breaks? By smashing it into pieces, and then letting each piece do its own thing! Thus your monolithic application becomes a series of interchangeable and easily manageable microservices.


Shippable is evolving constantly to help developers ship code faster by building the best continuous integration and delivery platform. The newest improvement to our infrastructure is the introduction of microservices. Our API not only handled http calls, it processed the tasks itself, so we're moving the processing of tasks into a microservices. Microservices are self-managed, self-contained units that monitor dependencies, listen to changes, and complete tasks delegated to it. In this way we can take out the parts and put in new ones without disturbing other services.

Continuous Deployment to Engine Yard

Here at Shippable we love taking customers all the way to continuous deployment. We've detailed a variety of different ways to get there in the past, and today we are going to be bringing out yet another way. Today we'll be showing you how to trigger your Shippable builds, to push your rails apps to Engine Yard.

Before going any further, there are a few pre-reqs:

  • An active Engineyard account
  • A working rails app on github
  • An active Shippable account
  • The above rails app being enabled on Shippable
  • An application env already setup on Engine Yard

Shippable builds with Git submodules

Sometimes it doesn't make sense to put all your code into one repo. It's common for projects to be spread across multiple repos, and linked together via git submodules. Shippable supports this workflow and all that's required is a few extra lines in your shippable.yml! If all the repos involved are public, you simply have to include commands to init and update the submodules in your shippable.yml file. Here's an example snippet:

- git submodule init
- git submodule update

Caching containers to speed up your builds

Important update on this blog


This blog is based on the old shippable.yml format. A built-in yml translator does translates the code from the old to the new format. Read more about the translation from the old to the new format here.

For the latest information, refer our documentation on caching and/or open a support issue, if you have questions.