A brief introduction to Cloudron

We take a quick peek to Cloudron.io service, which automates your application hosting and server administration.

In the About page of this blog I wrote that, every now and then something so fascinating pops up in the field of ICT that it gives me the itch to write and let the world know. Cloudron.io is one of those things. Cloudron makes hosting your own server and applications simple and automated.

Self-hosting is time consuming and error prone. I have been running this site for about a week now, and Ghost has received three minor updates already. In addition there are the updates to the underlying server and operating system. And all this is just maintenance, after you have installed and configured everything in place. Using Cloudron eliminates all of that.

How does it work?

Cloudron has been able to squeeze the installation process to a bare minimum for the end user. To summarize:

  1. Deploy a server. Use any provider you like. Ubuntu Linux is the preferred operating system. If don't know where to start, have a look at UpCloud - I know these guys personally and they are good.
  2. Install Cloudron on your freshly booted server - ie. copy-paste a string of commands from their website. I shall not add it here, in case they change something in the future.
  3. After installation it's all point and click using a well designed web interface. You register an account for your own Cloudron instance, as well as their internet service.
  4. When ready, proceed to their app store. On the free plan you can host two apps for free. No credit card required.

Cloudron's app store has all the best open source has to offer. For blogging they have WordPress, Ghost and Grav. They have analytics, VPN servers, Minecraft server, Nextcloud, collaboration tools, chats, project management, discussion forums (Discourse is good)...and everything in between.

Install your desired app and start crafting it to your liking. Your are now all set.

What happens then?

Cloudron runs in the background, being your automated sysadmin. The applications run inside Docker containers. You can host more than one on your single server. It takes care of all the updates to the server and the hosted apps. Note that you should not update the server manually, as it may generate version conflicts in between software packages.

Cloudron takes local backups and you can configure an external back destination to Amazon S3 or whatever. Utilizing the snapshot backups, you can move your apps easily to another server, in case you found a better deal or need more hardware resources. They even have a terminal emulator and a file uploader, if you need to drop in something manually, like the ads.txt for Google Adsense. Cloudron generates a log for all the executed actions.

Looks like Ghost was updated, while I was on a short weekend trip.

Sounds too good - what are the downsides?

There is a flip side to every coin. Using Cloudron, or any similar service, ties your operation to a third party. Luckily Ghost, my app of choice, is easily migrated to another service provider, in case things would go south with Cloudron.

You will also miss a huge learning opportunity when using an automated service to run the back-end. Also, since it is not built or managed by you first hand, you don't know exactly what is going on and how things are configured. You can of course log into your server and reverse engineer your setup.

From security perspective, Cloudron creates a single point of failure. If they mess things up, your site is messed up too. I am not a great sysadmin - a hobbyist at best. I consider myself being a bigger risk if I, often tired an weary, hassle with the back-end and updates manually. If you are a server wizard with mad skillz, you may think differently.

Keep your personal time management in mind. Do you want to be an administrator, or invest all you got to your blog, community, service, business, or what ever it is you are building?

Final thoughts

What impresses me with Cloudron is their attention to detail. This is not nerd porn for the developers audience. Everything is logically laid out, approachable and pleasant to use. They have not skimped on documentation either, which is well written and informative.

I have only been running them for a week now, so I can't yet tell how they perform in the long run. I have no experience how major application updates are handled, which often require some steps by the admin. Cloudron is a small company, but they have been around for a decade, so they have some track record, even though there are bigger players on the market.

I highly recommend to check them out, at least for some experimentation and tinkering, if going straight to production is too much for you. Cloudron also has a forum, which gives you a better insight of the action.