Skip to content

Comparisons

We think it's important to understand that Co-op Cloud is more than just software and technical configurations. It is also a novel organization of how to create technology socially. However, strictly technically speaking you may be wondering:

What about $alternative?ΒΆ

We have various technical critiques of other similar projects which are already up-and-running in the ecosystem, as they don't necessarily meet our needs as a small tech co-op. However, Co-op Cloud isn't meant to be a replacement for these other projects.

Here is a short overview of the pros/cons we see, in relation to our goals and needs.

CloudronΒΆ

Cloudron is complete solution for running apps on your own server

Pros

  • πŸ‘ Decent web interface for app, domain & user management.
  • πŸ‘ Large library of apps.
  • πŸ‘ Built-in SSO using LDAP, which is compatible with more apps and often has a better user interface than OAuth.
  • πŸ‘ Apps are actively maintained by the Cloudron team.

Cons

  • πŸ‘Ž Moving away from open source. The core is now proprietary software.
  • πŸ‘Ž Libre tier has a single app limit.
  • πŸ‘Ž Based on Docker images, not stacks, so multi-process apps (e.g. parsoid visual editor for Mediawiki) are a non-starter.
  • πŸ‘Ž Difficult to extend apps.
  • πŸ‘Ž Only supported on Ubuntu LTS.
  • πŸ‘Ž Upstream libre software communities aren't involved in packaging.
  • πŸ‘Ž Limited to vertical scaling.
  • πŸ‘Ž Tension between needs of hosting provider and non-technical user.
  • πŸ‘Ž LDAP introduces security problems - one vulnerable app can expose a user's password for all apps.
  • πŸ‘Ž Bit of a black box.

YunoHostΒΆ

YunoHost is an operating system aiming for the simplest administration of a server

Pros

  • πŸ‘ Lovely web interface for app, domain & user management.
  • πŸ‘ Bigger library of apps.
  • πŸ‘ Awesome backup / deploy / restore continuous integration testing.
  • πŸ‘ Supports hosting apps in subdirectories as well as subdomains.
  • πŸ‘ Doesn't require a public-facing IP.
  • πŸ‘ Supports system-wide mutualisation of resources for apps (e.g. sharing databases by default)

Cons

  • πŸ‘Ž Upstream libre software communities aren't involved in packaging.
  • πŸ‘Ž Uninstalling apps leaves growing cruft.
  • πŸ‘Ž Limited to vertical scaling.
  • πŸ‘Ž Not intended for use by hosting providers.

CaproverΒΆ

CapRover is an easy to use app/database deployment & web server manager for applications

Pros

  • πŸ‘ Bigger library of apps.
  • πŸ‘ Easy set-up using a DigitalOcean one-click app.
  • πŸ‘ Works without a domain name or a public IP, in non-HTTPS mode (good for homeservers).
  • πŸ‘ Deploy any app with a docker-compose.yml file as a "One Click App" via the web interface.
  • πŸ‘ Multi-node (multi-server) set-up works by default.

Cons

  • πŸ‘Ž Single-file app definition format, difficult to tweak using entrypoint scripts.
  • πŸ‘Ž Nginx instead of Traefik for load-balancing.
  • πŸ‘Ž Command-line client requires NodeJS / npm.
  • πŸ‘Ž Requires 512MB RAM for a single app.
  • πŸ‘Ž Backup/restore is "experimental", and doesn't currently help with backing up Docker volumes.
  • πŸ‘Ž Exposes its bespoke management interface to the internet via HTTPS by default.

AnsibleΒΆ

Ansible mature automation and deployment tool.

Pros

  • πŸ‘ Includes server creation and bootstrapping.

Cons

  • πŸ‘Ž Upstream libre software communities aren't publishing Ansible roles.
  • πŸ‘Ž Lots of manual work involved in things like app isolation, backups, updates.

KubernetesΒΆ

Kubernetes (or K8s) is a system for automating deployment, scaling, and management of containerized applications.

Pros

  • πŸ‘ Helm charts are available for some key apps already.
  • πŸ‘ Scale all the things.

Cons

  • πŸ‘Ž Too big -- requires 3rd party tools to run a single-node instance.
  • πŸ‘Ž Not suitable for a small to mid size hosting provider.

Docker-composeΒΆ

Docker Compose is a tool for defining and running multi-container applications.

Pros

  • πŸ‘ Quick to set up and familiar for many developers.

Cons

  • πŸ‘Ž Manual work required for process monitoring.
  • πŸ‘Ž Secret storage not available yet.
  • πŸ‘Ž Swarm is the new best practice.

Doing it Manually (Old School)ΒΆ

If you are an absolute Shaman in a Shell and learning new gadgets just slows you down, have it, but maybe ask how old is old enough?

Pros

  • πŸ‘ Simple - just follow upstream instructions to install and update.

Cons

  • πŸ‘Ž Loads of manual work required for app isolation and backups.
  • πŸ‘Ž Array of sysadmin skills required to install and maintain apps.
  • πŸ‘Ž Hard to share configurations into the commons.
  • πŸ‘Ž No idea who has done what change when.

StackspinΒΆ

Stackspin deployment and management stack for a handful of popular team collaboration apps.

Pros

  • πŸ‘ Easy instructions to install & upgrade multiple tightly integrated apps.
  • πŸ‘ Offers a unified SSO user experience.
  • πŸ‘ Offers tightly integrated logging, monitoring, and maintenance.
  • πŸ‘ Has a strong focus and attention to security.

Cons

  • πŸ‘Ž Upstream libre software communities aren't involved in packaging.
  • πŸ‘Ž It is not designed to be a general specification.
  • πŸ‘Ž Hard to share configurations into the commons.
  • πŸ‘Ž Significantly limited library of eight apps.
  • πŸ‘Ž Additional apps are treated as "External Apps" with only OAuth2/OpenID integration.
  • πŸ‘Ž Requires a Kubernetes cluster.

MaadixΒΆ

Maadix managed hosting and deployment of popular privacy preserving applications.

Pros

  • πŸ‘ Nice looking web interface for app, domain & user management.
  • πŸ‘ Offers a paid hosting service to get up and running easily.

Cons

  • πŸ‘Ž Upstream libre software communities aren't involved in packaging.
  • πŸ‘Ž It is not designed to be a general specification.
  • πŸ‘Ž Hard to share configurations into the commons.
  • πŸ‘Ž Limited library of apps.
  • πŸ‘Ž Uses OpenNebula, Ansible, and Puppet as underlying technologies.
  • πŸ‘Ž Appears to be only a team of two people.
  • πŸ‘Ž Appears to be inactive on Mastodon and limited GitLab activity.