The long road to developer happiness…
Just a little more than 3 years ago, we rolled out our first product, Cloud 66 for Rails. As developers we wanted to focus on building applications and great experiences for our customers and not dealing with servers. Back in 2013 there were 2 options available to developers: PaaS like Heroku or DIY configuration of our servers in the cloud.
While we loved PaaS, we found it expensive and limiting. With so many cloud providers for every need and requirement and price range and so many great open source technologies to benefit from, we couldn’t understand why we needed to be locked into one platform, one set of technology and one cloud provider. Heroku was a great tool to start with, but neither us nor any of our friends were staying on it for a long time.
The second option was building and managing our own servers: while we had the expertise of doing this in house, we found the tools available for this very, let’s say, “infrastructure centric”. As a developer, we wanted to open firewall ports from “application servers” to “database servers” not from an IP address to another IP address. As developers we wanted to backup all of our databases at the same time with the same parameters and alerts.
In short, we wanted our infrastructure management tools to be aware of the application they were running. To us, infrastructure exists to serve one purpose: run an application and therefore the tools to manage it must be aware of that fact. We found the tools and practices of managing infrastructure detached from their ultimate purpose.
In 2015, we made Cloud 66 for Docker publicly available. With containers on the rise, we could see how developers will take care of what goes inside a container while we can take care of how they are managed on any server or cloud. This made the same principles of “Application Centric Infrastructure Management” available to anyone and not just only Rails developers.
Say Hello to Cloud 66 for Node
Although you could - and many did - run Node applications on Cloud 66 for Docker, we realised containers are more like an implementation detail rather than a product feature. We could see how developers don’t want to deal with containers the same way they didn’t want to deal with servers.
What is it made of?
Cloud 66 Starter, is an open source tool that generates application composition files (
service.yml) and service build recipes (
Dockerfile) directly from your Node.js codebase without you having to deal with details of Docker and containers.
Cloud 66 Habitus is another open source tool that facilitates complex container build flows with multiple steps, parallel builds and dependencies.
Cloud 66 for Docker is responsible to taking the built container (on our BuildGrid using Habitus) and rolling it out onto any server on your own cloud provider just like you would expect.
Combined, these 3 components provide a powerful platform to allow you benefit from the flexibility of containers on your own servers without worrying about Dockerfiles, server descriptions and provisioning, monitoring and cloud APIs.
How can it help you?
Starting today, you can deploy any Node.js application to your own servers on any cloud in 3 simple steps:
- Connect your git repository
- Connect your cloud provider