zzyzxd
6 days ago
Selfhosting is my hobby but I am also an SRE. I am hesitant to do this because the instruction is "too easy" -- "Simply open your firewall, download and run this installer.sh with sudo on your server and that's it!"[1].
How do I secure the webserver and the data? Where is the data on my disk? How to backup and restore? High availability?
There might be detailed documentation somewhere, or I can even read the code. But these are the important things an open source software should tell its users right off the bat.
1: https://github.com/bluesky-social/pds/blob/main/README.md
freedomben
5 days ago
Same, exactly. I would so much rather be given a docker-compose or k8s yaml along with some other tidbits like how to run migrations and stuff, than get a bash script I can just run. I've been doing this long enough to know that it's not initial setup work that really matters, it's the upgrade and backup/restore story that really matters. If your bash script just pulls and runs a docker container or something then cool, but if it's doing much more than that then that's a big red flag to me.
diggan
5 days ago
Here:
- https://raw.githubusercontent.com/bluesky-social/pds/main/in... has all the expected outside docker-compose setup, you can read it through in like 5 minutes
- Heavy-duty part of the setup is running https://raw.githubusercontent.com/bluesky-social/pds/main/co... which you should be familiar with
I guess the shellscript is for people who want a one-line install, which I wouldn't do myself either, but I guess some people prefer.
zzyzxd
5 days ago
The script even installs docker with apt by itself (which, I think, is the only reason they require Ubuntu as the OS -- to not to deal with any other package manager variants)... I mean, why? Just let people install docker however they like! If you don't even trust your users to install a container runtime, who's your target audience really?
It's also over complicated, like, it even tries to handle race condition of multiple apt processes! What kind of environment do they expect the users have? As the project become more popular, the script will need to handle more edge cases. Let's see if it is still a 5 minutes read one year later.
> I guess the shellscript is for people who want a one-line install, which I wouldn't do myself either, but I guess some people prefer.
This is the problem in lots open source projects -- providing a one-liner installer and bragging about how easy the initial setup is, without an easy path for long term maintenance. Give it some time, many happy users of the one-liner will be unhappy when they encounter issues.
j45
5 days ago
This message is for anyone who might find trying self-hosting intimidating.
Like hosting an application in the cloud, you also will never stop improving how you self-host.
If there's questions lacking about a software package, it's often could be reflected in your self-hosting environment too.
Running this type of an installer is excellent to quickly introduce yourself to any technology - to then start learning about how you want to run it long term.
The questions expressed above are not new. How SRE's solve it today also can be different and more complicated than needed.
Easy answer - if they have an install script, it's getting run inside a VM, or Docker which itself is a baseline backup and HA automatically if needed.
If generally anything is run inside of a self-hosted hypervisor like Proxmox, it can be setup to automatically backup, mirror, HA as-is, while you figure out what you want. This includes running docker inside a Proxmox VM, there is not a big performance hit anymore for doing this for things that are largely idle most of the time.
There is a big difference between SaaS, PaaS, and IaaS. It's easier and easier to get the benefits from all three by being willing to build up the foundation instead of pointing at the gaps in each package for not filling it for you.
It's encouraging to see things becoming more possible :)
dawnerd
5 days ago
I was about to do this as well but their installer sketched me out. Why can't it just be some easy to follow docker instructions? They use docker too but instructions to set it up on your own is basically "read the installer script".
Meanwhile mastodon is incredibly easy to self host w/ relays.
j45
5 days ago
An installer script is often an early step, and much better than nothing... as well as a step towards docker.
Here's the kicker, the install script could be called from a Dockerfile pretty easily, no? Sure, there might be things to sort out, but it doesn't seem unreasonable.
I agree having a docker image is super handy and can be quick to try, as well as update, and put into a larger self-hosted environment how you need.
benharri
5 days ago
i certainly wouldn't say mastodon easy to self host
hagbard_c
4 days ago
Pleroma [1] is and does the activitypub thing just as well. I installed it to see if it added anything worth keeping together with the other activitypub things I'm running (Peertube, Pixelfed and Lemmy, the latter two only for testing purposes, the first sees real use on several instances) and can vouch on the ease of getting it up and running.
[1] https://docs.pleroma.social/backend/installation/otp_en/
diggan
5 days ago
> How do I secure the webserver and the data? Where is the data on my disk? How to backup and restore? High availability?
I feel like that it's kind of out of the scope from an article describing the steps for application/protocol specific infrastructure. You need to look for resources, guides and such for general self-hosting instead, somewhere else.
For example, if you use TrueScale NAS/unraid/proxmos or whatever for local self-hosting, you'd setup those things via those platforms. If you use Kubernetes/Nomad/Incus/Containers, you'd solve those things via that tooling.