docs.coopcloud.tech/docs/faq.md

160 lines
6.0 KiB
Markdown
Raw Normal View History

2021-01-02 13:13:54 +00:00
---
2021-02-18 11:20:30 +00:00
title: Frequently asked questions
2021-01-02 13:13:54 +00:00
---
2021-02-23 16:41:47 +00:00
## What is the Co-op Cloud?
2021-01-02 13:13:54 +00:00
2021-02-23 16:41:47 +00:00
Co-op Cloud aims to make hosting free software applications simple for small providers. It uses the latest container technologies and innovations and configurations are shared into [the commons](https://en.wikipedia.org/wiki/Commons) for the benefit of all.
2021-01-02 13:13:54 +00:00
2021-02-23 16:41:47 +00:00
The project is intended for small service providers such as tech co-operatives who are looking to standardise around an open, transparent and scalable infrastructure.
2021-02-18 11:20:30 +00:00
2021-02-23 16:41:47 +00:00
## Who is behind the project?
The project was started by workers at [Autonomic](https://autonomic.zone/) which is a [workers co-operative](https://en.wikipedia.org/wiki/Worker_cooperative) providing technologies and infrastructure to empower users to make a positive impact on the world.
2021-02-18 11:20:30 +00:00
2021-02-23 16:41:47 +00:00
We use Co-op Cloud in production amongst other systems.
2021-02-18 11:20:30 +00:00
2021-02-23 16:41:47 +00:00
## Why Co-op Cloud?
2021-02-23 14:13:12 +00:00
2021-02-23 16:41:47 +00:00
#### 👍
- 👍 Thin "ease of use" layer on top of already standardised tooling
- 👍 Extremely modular
- 👍 Collective commons based configuration via public git repos
- 👍 Focussed on hosting providers
- 👍 Uses upstream packages
- 👍 Now and always free software
- 👍 Command line focussed
- 👍 Horizontal and vertical scaling
2021-02-18 11:20:30 +00:00
2021-02-23 16:41:47 +00:00
#### 👎
- 👎 Still a very young project
- 👎 Limited availability of well tested apps
- 👎 Requires command line knowledge to use
- 👎 Currently x86 only
2021-02-18 11:20:30 +00:00
2021-02-23 16:15:41 +00:00
## Why Docker Compose?
2021-02-23 14:13:12 +00:00
2021-02-23 16:15:41 +00:00
## Why Docker Swarm?
2021-02-18 11:20:30 +00:00
## Why start another project?
2021-02-23 16:14:30 +00:00
One of our core principles is to not re-invent the wheel. However, fitting needs into existing projects doesn't always work out. Some of the developers on this project were also once developers on the other existing projects.
2021-02-18 11:20:30 +00:00
## 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, the Cooperative Cloud isn't meant to be a replacement for these others projects. Here is a short overview of the pros/cons we see and how that relates to our goals here.
2021-01-02 13:13:54 +00:00
### Cloudron
2021-02-18 11:20:30 +00:00
#### 👍
2021-02-23 16:41:47 +00:00
- 👍 Decent web interface for application, domain & user management.
- 👍 Large library of applications.
- 👍 Built-in SSO using LDAP, which is compatible with more applications and often has a better user interface than OAuth.
- 👍 Applications are actively maintained by the Cloudron team.
2021-02-18 11:20:30 +00:00
#### 👎
2021-02-23 16:41:47 +00:00
- 👎 Moving away from open source. The core is now proprietary software.
- 👎 Free tier has a single application limit.
- 👎 Based on Docker images, not stacks, so multi-process applications (e.g. parsoid visual editor for Mediawiki) are a non-starter.
- 👎 Difficult to extend applications.
- 👎 Only supported on Ubuntu LTS.
- 👎 Upstreams free software communities aren't involved in packaging.
- 👎 Limited to vertical scaling.
- 👎 Tension between needs of hosting provider and non-technical user.
- 👎 Bit of a [black box](https://en.wikipedia.org/wiki/Black_box).
2021-01-02 13:13:54 +00:00
### YunoHost
2021-02-18 11:20:30 +00:00
#### 👍
2021-02-23 16:41:47 +00:00
- 👍 Lovely web interface for application, domain & user management.
- 👍 Bigger library of applications.
- 👍 Awesome backup / deploy / restore continuous integration testing.
- 👍 Supports hosting applications in subdirectories as well as subdomains.
- 👍 Doesn't require a public-facing IP.
2021-02-18 11:20:30 +00:00
#### 👎
2021-02-23 16:41:47 +00:00
- 👎 Upstream free software communities aren't involved in packaging.
- 👎 Uninstalling applications leaves growing cruft.
- 👎 Limited to vertical scaling.
- 👎 Not intended for use by hosting providers.
2021-01-02 13:13:54 +00:00
### Ansible
2021-02-18 11:20:30 +00:00
#### 👍
2021-02-23 16:41:47 +00:00
- 👍 Includes server creation and bootstrapping.
2021-02-18 11:20:30 +00:00
#### 👎
2021-02-23 16:41:47 +00:00
- 👎 Upstream free software communities aren't publishing Ansible roles.
- 👎 Lots of manual work involved in things like application isolation, backups, updates.
2021-01-02 13:13:54 +00:00
### Kubernetes
2021-02-18 11:20:30 +00:00
#### 👍
2021-02-23 16:41:47 +00:00
- 👍 Helm charts are available for some key applications already.
- 👍 Scale all the things.
2021-02-18 11:20:30 +00:00
#### 👎
2021-02-23 16:41:47 +00:00
- 👎 Too big -- requires 3rd party tools to run a single-node instance.
- 👎 Not suitable for a small to mid size hosting provider.
2021-01-02 13:13:54 +00:00
### Docker-compose
2021-02-18 11:20:30 +00:00
#### 👎
2021-02-23 16:41:47 +00:00
- 👎 Manual work required for process monitoring.
- 👎 Secret storage not available yet.
- 👎 [Swarm is the new best practice](https://github.com/BretFisher/ama/issues/8#issuecomment-367575011).
2021-01-02 13:13:54 +00:00
2021-02-23 16:41:47 +00:00
### Doing it Manually (Old School)
2021-01-02 13:13:54 +00:00
2021-02-18 11:20:30 +00:00
#### 👍
2021-02-23 16:41:47 +00:00
- 👍 Simple - just follow upstream instructions to install and update.
2021-02-18 11:20:30 +00:00
#### 👎
2021-02-23 16:41:47 +00:00
- 👎 Loads of manual work required for application isolation and backups.
- 👎 Array of sysadmin skills required to install and maintain applications.
- 👎 Hard to share configurations into the commons.
- 👎 No idea who has done what change when.
## Which technologies are used?
The core technologies of co-op cloud are free software tools that enjoy wide adoption across developer and system administration communities.
- [Containers](#why-do-you-use-containers)
- [Docker compose](#why-do-you-use-docker-compose)
- [Docker swarm](#why-do-you-use-docker-swarm)
## Who packages your applications?
One of your main aims is to re-use existing good work that free software projects
have already done.
## Why do you use containers?
We use containers because so many free software communities choose to use them.
The upstream projects are already writing and using Docker files and Docker-compose definitions
for their development and production environments. We can directly re-use their packaging and contribute back upstream by helping maintain their in-repository files. We meet them where the ecosystem is at and we do not create yet another new packaging format or duplicate effort.
Co-op cloud re-uses upstream free software project container based workflows through well known CI/CD automation tools and issue trackers. Coop cloud proposes the idea of more direct coordination between
distribution methods (app packagers) and production methods (developers and system administrators).
## Why do you use Docker compose?
TODO.
## Why do you use Docker Swarm?
TODO.
2021-02-23 16:15:41 +00:00
## What licensing model do you use?
The Cooperative Cloud is and will always be available under [copyleft licenses](https://en.wikipedia.org/wiki/Copyleft).