I’m thinking of building a series of networked applications with Elixir, e.g. an email server, a chat client, and others. I’d like to make it as easy as possible for others to self-host them. Ideally, it would have simple configuration and require minimal management, in the vein of Mail-in-a-box. I haven’t seen many self-hosted Elixir apps out in the wild, though, other than Pleroma. Does anyone here maintain an Elixir app that encourages users to self-host it? Do you have any best practices for structuring and distributing these apps?
You may find some helpful patterns in a toolkit we’re working on for building deploying Elixir + Vue apps:
There are some nice Earthfile + Pulumi recipes in there for deployment with Github Actions, Postgres, Redis and Kubernetes.
The deployment folder for Pulumi is here: potionx/index.ts at main · PotionApps/potionx · GitHub