2.7 KiB
nassella
A worker's co-op and self-hosting for anyone. <3
nassella
is the working name for the worker's co-op as well as the
current in-development software project, which is: to build a system
that enables anyone to self-host a specific set of apps.
A worker's co-operative
I want to build a workplace where the goals are differently aligned from that of a more common tech workplace. The goals of the worker's co-op:
- worker control: 1 worker = 1 vote
-
long-term, stable sustainable job's for members
- prioritize less work hours over growth/profit
-
voluntary and open membership
-
no discrimination including:
- gender
- social
- sexuality
- racial
- political
- religious
-
-
provide a safe and inclusive work environment
- members must feel safe to make mistakes and voice different opinions
- communication should be direct and specific
- expectations must be explicitly communicated
- boundaries must be listened to and respected
- members must not speak to or cooperate with law enforcement
- provide opportunities for members to learn and grow
-
remain independent and autonomous
- outside capital, if any, may not have control
- cooperate with other cooperatives
-
concern for community
- actively engage with local communities
- actively manage environmental impacts
- seek out, involve, and learn from diverse groups
Product
The goal is to produce a product that enables less-technical people the ability to self-host applications in a secure and auto-updating manner. Self-hosting for anyone!
Potential Qualities
- secure
-
auto-updates
- host system
- container layers
- container apps
- manages dns records
- manages ssl certs
-
reproducible (in a config standpoint)
- config is declarative
- load balances as needed
- collects and displays logs from all apps in a useful format
- data volumes/storage independent from containers
- can off-site backup automatically
- updates are run through CI before being made available
- can be moved between providers (no vendor lock-in)
Potential Tech For Self-Hosted Cloud Infra
-
DNS Registration
- Terraform via supported registry
-
DNS Config
- Terraform
-
resource management (VPS's etc)
- Terraform
-
LB for apps
- docker-compose + caddy
-
SSL
- LB + caddy
-
apps
- docker-compose
-
OS
- flatcar linux
Potential Tech for Deployment and Config Node
Can be run locally or as a SaaS
- docker contained webapp for deploying/configuring/updating?
-
needs to generate/init and store:
- terraform config and state
- docker-compose config (this can be embedded in terraform config)
-
can be used to:
- select apps
- resources (manage)
- view logs (stored on self-hosted infra)