Skip to main content

Introduction and Planning a Node

Note: This guide is currently a work in progress. These instructions may not be complete, and are subject to change.

Introduction

Welcome to this guide for putting together a Website League node! Hosting a webserver on the public Internet can be a bit daunting, but hopefully this guide will help guide you through what's necessary to do so. There may be parts of the guide which are hard to understand, but try to take it slow, and if you need help, there's folks on the Discord who are willing to give assistance (the author of this guide included.) It's in this guide's author's opinion that everyone deserves to be able to have their own slice of the Internet, and knowledge should not be a barrier to that.

There's a few parts to setting up any webserver that uses ActivityPub - you have to obtain a domain name and a server, link the domain to the server, and then set up and configure your server to run your software of choice.

Decisions

The two big things you can't change about your node once you've started it is your domain name, and your software. There are currently no known migration options for migrating from one federating software to another, and ActivityPub is extremely reliant on the domain name. You will want to make sure you are comfortable moving forward with the two things you choose in this regard. 

Domain Name

As far as domain name goes, there are several options available to you for domain registrars. Choose one that's trustworthy, and one that you feel would have your back in the event of a security issue (i.e. your account gets hijacked.) The author of this document uses Porkbun, but there are other options out there; a few that have been mentioned are Namecheap, Glauca, and Cloudflare.

Keep in mind that name registrars will often offer a deeply discounted price for their domain names, and a much steeper price for subsequent years. Assuming you will be running this node for at least over a year, be mindful of what the normal renewal price will be, so you don't get stuck with a $40 renewal for what you thought was a $2 domain!

Once you've go your registrar of choice, go looking for a domain name! Keep in mind this domain will be at the end of your (and your users, if this is a multi-user node) username, so pick something that's both available and that you'd like at the end of your username! (For example, if you chose the domain sickos.social and your username was critter, your full username would be @critter@sickos.social.) You don't have to necessarily be elegant with this, but it can be fun coming up with a good domain!

Once you've come up with (and purchased) a good domain name for your instance, it's time to think about the software you'll use.

Fediverse Software

As far as software goes, you have a few options. The two known/adapted to work for the Website League as of writing this are GoToSocial and Akkoma. This guide will focus on installing GoToSocial, but you may want to compare and contrast both to see which one you would prefer to run.

GoToSocial is lighter and simpler to spin up, but doesn't come with its own UI/front-end for posting; you'd need to use (or install) an external client, such as Phanpy or Tusky. Akkoma, on the other hand, is more complicated, but it also offers several front-ends which can then be re-skinned/re-coloured to your liking, among other bits of flexibility.

There are other federating software choices out there - such as Sharkey or the well-known Mastodon, but these are not included here as they either lack features or have flaws which disqualify them for use with the Website League. You may be able to patch the software to make it work, but this is out of the scope of this guide.

Server

Now that you've picked what software you'd like to use, and the domain name you'd like, the last thing you need to choose is where to put your instance! There are, again, multiple options for this - Vultr, Hivelocity, Linode, DigitalOcean, and OVH are options. (Oracle is also an option, and you may be able to get it for free, with the caveat that it's Oracle.) For this guide, we will be using Vultr.

For this guide, we're going to get a regular cloud compute shared CPU VM with 1 vCPU, 1 GB RAM, and 25 GB SSD for $5/mo. If you start to run into resource constraints, you can always upgrade your VM.

planning-vultrplan.png

These size constraints make sense for the software we are running - GoToSocial is pretty lightweight. If you're running other software, you may want to consider something with more RAM.

Give your VM a hostname and hit Deploy Now. After a moment, it'll start up and give you an IP address. You're now the proud owner of a virtual machine! Keep note of the IP address it gives you as we move on to the next section - configuring your domain name!

Screenshot 2024-09-25 193845(1).png