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

Autumn-Winter 2024 events

For this autumn-winter 2024 season, Clever Cloud continues to participate in various trade shows and conferences.
Company Event

Clever Cloud joins Hexatrust

Clever Cloud recently joined Hexatrust, in line with its commitment to security in the cloud, and the importance of creating and supporting French and European digital ecosystems.
Company

Azimutt on Clever Cloud: easily view and manage your SQL databases

Simply creating databases is great, but being able to explore, analyze and manage them in a user-friendly interface is even better. With this in mind, we worked with Loïc Knuchel to integrate Azimutt on Clever Cloud.
Company