Docker Support Done Right

We believe in simplicity. We’re on a mission to make the deployment and the application developement easier and safer. That's why months ago, we started to work on Docker support, hand in hand with Docker Inc, to allow “Dockerized” apps on Clever Cloud.

Deploying Docker apps on Clever Cloud is as easy as deploying a regular app: just add a Dockerfile and git push.

Why docker support is important for Clever Cloud users?

We support a lot of languages. But some of our users have specific needs for their applications. Now they can build customs stacks without a specific support on Clever Cloud, thanks to the 13,000+ images available on Docker Hub.

While the PaaS way of deploying apps is awesome for standardised applications, it can become a hurdle when having to deal with customized stacks (I'm looking at you, Haskell). Docker fills the gap between PaaS and IaaS by letting Clever Cloud users manage their software stack while taking advantage of most of Clever Cloud features: push to deploy, autoscalability and zero downtime updates.

Has Docker become Clever Cloud's tech core?

Nope. Docker comes in addition to the other runtimes we are already providing.

How does it work?

Basically, Docker provides tools and standards to manage containers. We're fond of it at Clever Cloud, because it brings a simplicity in management through a solid standard.

Security

Containers bring simplicity at the expense of some isolation: the kernel is shared, network has to be handled more carefully, and so on. While it's a perfectly acceptable tradeoff for architectures where all the applications are trusted, as a hosting company we can't make it.

Clever Cloud runs untrusted third party code (your code) and containers don't offer the level of isolation needed for that, that's why every dockerized app runs in its own Virtual Machine.

The best news is that it's not at the expense of performance.

Performances

Virtual Machines you said? No chance, you'll get no perfs from it, Monsieur.

At Clever Cloud, we handle all the stack, especially the virtualization. First of all, our VMs are based on KVM and Virtio. These technologies allow for a very reduced overhead both on CPU (through specific instructions designed for virtualization), and on networking through Virtio's direct networking access.

In addition to that, since the network isolation is handled by the VM, we can run Docker networking in host mode. By default Docker runs in bridge mode, where all the network interactions happen behind a NAT layer, which has a performance cost.

Finally, both the hypervisors and the guests run finely-tuned, bare-metal OSes, with only what's needed, and nothing more.

All in all, new VMs are up and running in a few seconds' time, and offer excellent runtime performance.

How to get started?

Head up to the doc, your first dockerised application on Clever Cloud is one Dockerfile away. If you want to test it right now, you can fork and deploy to Clever Cloud a small hello world demo we made for the last Human Talks event we've made.

Blog

À lire également

Clever Cloud: Discover our clever side

Faced with increasingly demanding technical environments, Clever Cloud has established itself as a key player in supporting tech teams and IT decision-makers.
Company

Metabase on Clever Cloud: easily query and visualize your data

Your business generates data, which you need to analyse, understand and make available to your teams, both technical and non-technical. To meet this need, we worked with David Sferruzza to integrate Metabase for the cloud, which is available on our Marketplace and can be easily deployed on Clever Cloud.
Company

What is cloud computing?

Cloud computing is much more than just a trend: it's revolutionising the way businesses use, manage and optimise their IT resources.
Engineering