Shopify Runs Docker in Production at Scale

Background

Shopify is a Canadian commerce company headquartered in Ottawa that develops computer software for online stores, enabling them to setup business online. The complete platform allows companies to set up an online store to sell goods, giving online businesses the power to organize products, customize their storefront, accept credit card payments, and track and respond to orders


Challenges

When Shopify first started out it was using Ruby on rails for 10 years, and ran the service as a giant monolithic app. The company was looking for a solution to make it easier for their developers to deploy applications quickly. Shopify believes that developers should not only build applications, but also own the container as well as the process for shipping it off to the orchestration team. But in oder to do this, the company needed a way to provide consistency between development, testing, staging and production environments.


Solution

By using Docker, Shopify developers now own the development process as well as the container itself, while the platform team owns the platform that containers run on. This new process has defined clear lines of demarcation when it comes to responsibility within the application lifecycle process.. Shopify containerized their monolithic apps with Docker containers, and can now achieve fast deploys now with Docker, building images in only 2 minutes.


Get Started for Free
  • “We started looking at Docker in the middle of 2013 because our CEO said we need to make it easier to solve ecommerce problems within Shopify. When someone wants to deploy a new app within Shopfiy in out datacenter, they shouldn’t have to consult Ops, creating tickets or finding someone with Cookbook knowledge to be able to deploy their app”

    Simon Eskildsen, Software Developer, Shopify