I realize that it’s still actively being developed, but does anyone know what the target requirements are going to be for a self-hosted Ghost ActivityPub instance?
The repo is here:
There’s not really any docs on deploying, but from the docker compose, you might need:
- mysql
- Google PubSub (idk of other PubSub options are supported)
- jaeger
Thanks for inspiring me to take a look at the current docker-compose. While I’m not looking to run a dev build, I’m curious about the targeted production specs. It’s obviously very early, but it seems like a self-hosted setup will need more resources—potentially 4-8GB of RAM and 2 vCPUs (e.g., Intel i3, Ryzen 3, or equivalent) to 4 vCPUs (e.g., Intel i5, Ryzen 5).
Do we know if Ghost and the ActivityPub services can be run separately? For example, could a more powerful (local) machine handle subscribing and reading while a simpler cloud-hosted setup runs the Ghost blog?
I appreciate how minimal my Ghost cloud setup is (costs me literally nothing to run on GCP on a micro-instance with cloudflare caching), and I’m not super motivated to pay for additional cloud services.
From the README, yes - there’s only a handful of routes that are handled by the ActivityPub repo. Your reverse proxy can direct them to another machine.
My understanding with Ghost’s ActivityPub support is that if you self host this component, you’re effectively creating your own fediverse instance, which has the overhead of handling all of the events (likes, posts, comments, etc.) that relate to your network, which can be… a lot. I’m not actively paying attention to it, so take my comments with a bucket of salt
I did a little playing around with ActivityPub this morning. I didn’t get all the way there, but it may well be just that I was trying to do it in WSL2 and a local Ghost install, which was a mistake!
@Cathy_Sarisky, the conclusion about WSL2 made me curious and I wanted to see if a native Ubuntu 24.04 would change things.
Spoiler: it did. But it’s not easy either
You got a lot further than I did! I wonder why you’re not seeing posts? When I get another chance to play with it, I’m going to have to see if I can get as far as you did. Maybe you just need to publish something new? (Possible the webhooks don’t run for old content?)
I tried publishing new stuff, as that was also my thought. On Mastodon it showed the correct number of posts, in the end, but I couldn’t see them there. Need to dig through the logs later – pretty sure the reason is in there, but it got too late already yesterday
Sleep is for the weak! ;)
(Written after I was up until 11pm trying to make tests work, then woke up at 5am realizing what my problem was. My sleeping brain was right, but there was another problem behind it, so here I am 3.5 hours later, still wrangling tests…)
I hope proprietary Google PubSub service isn’t a final requirement and that Jaeger is optional. That looks more like a debugging / monitoring tool.
Hey @jannis , did you get any further? Curious, as I’m eye-ing it and thinking about having another stab…
Not yet. It’s been on my mind, but haven’t found time for it yet