Add comparisons page
continuous-integration/drone/push Build is passing Details

This commit is contained in:
3wc 2020-12-27 21:36:05 +02:00
parent eaf4156a1e
commit 72f5a7c113
2 changed files with 58 additions and 0 deletions

37
docs/comparisons.md Normal file
View File

@ -0,0 +1,37 @@
# "This is foolishness, what about ...?"
- Kubernetes
- 👍 Helm charts are available for some key apps already
- 👎 too big -- requires 3rd party tools to run a single-node instance
- Bitnami stacks
- Cloudron
- 👍 Lovely web interface for app, domain & user management
- 👍 Bigger library of apps
- 👍 Built-in SSO using LDAP, which is compatible with more apps and often has a better user interface than OAuth
- 👍 Most apps are actively maintained by the Cloudron team
- 👎 Moving away from open source. Free version has a 1-app limit
- 👎 Based on Docker images, not stacks, so multi-process apps (e.g. parsoid for Mediawiki) are a non-starter
- 👎 Difficult to extend apps
- 👎 Only supported on Ubuntu
- 👎 Upstreams aren't involved
- Yunohost
- 👍 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
- 👎 Upstreams aren't involved
- 👎 Not idempotent: uninstalling apps leaves growing cruft
- Ansible
- 👍 Includes server creation and bootstrapping
- 👎 Upstreams aren't publishing Ansible roles
- 👎 Lots of manual work involved in things like app isolation, backups, updates
- `docker-compose`
- 👎 Manual work required for process monitoring
- 👎 Secret storage not available yet
- 👎 [Not recommended](https://github.com/BretFisher/ama/issues/8)
- Manually installing apps
- 👍 Simple - just follow upstream instructions to install and update
- 👎 Loads of manual work required for app isolation and backups
- 👎 Array of sysadmin skills required to install apps
- 👎 Hard to share configs into the commons

View File

@ -31,5 +31,26 @@ CoCl is a **philosophy**.
- then you install an **app** like wordpress or nextcloud, which is made up of multiple **services**...
- .. and configure your app.
## Technical description
Software-wise, CoöpCloud is:
- [`coop-cloud`](https://git.autonomic.zone/coop-cloud/), a collection of Docker "swarm mode" configurations for popular web apps
- [`abra`](https://git.autonomic.zone/autonomic-cooperative/abra), a simple tool for Docker swarm management
- a recommended default set of stacks:
- Traefik for SSL & routing
- `postfix-relay` for outgoing email
## Principles / features:
- Security by default
- Secret storage using `docker secret` (["What makes it secure?"](https://github.com/BretFisher/ama/issues/86))
- Automatic SSL using Traefik & LetsEncrypt
- Zero-downtime deployments (for apps with healthchecks defined)
- Continuous integration testing using Drone and our [`stack-ssh-deploy`](https://git.autonomic.zone/coop-cloud/stack-ssh-deploy) plugin
- Low maintenance overhead:
- Automatic tracking of upstream Docker images using `renovate-bot`
- Avoiding custom Docker images as far as possible
[traefik]: https://hub.docker.com/_/traefik?tab=tags
[mariadb]: https://hub.docker.com/_/mariadb?tab=tags