Setting up a test instance of Mastodon for the OpenETC using Cloudron

Getting your Trinity Audio player ready...
5 min read

One of the things I want to blog more about this year is the work we are doing with the OpenETC.

Last week, I wrote about how I am looking to use Mastodon more over Twitter in an attempt to try to gain more control over how my data is being used by corporations. The lovely thing about Mastodon is that it is a federated service, meaning that it works much like email in that anyone can set up a Mastodon server, and connect with other Mastodon servers, so control of the platform can happen at a local community level. Here is a good overview of how federation works, using Mastodon as an example.

I am currently using a Mastodon account on the Mastodon server mastodon.social, which is maintained and operated by the main developer of Mastodon, Eugen Rochko. I’ve made the decision to actually pay for the service by signing up for a small monthly Patreon payment to Eugen to help support the development and administration of the platform. But this week I wanted to see what it would take to set up an instance of Mastodon for the OpenETC with the idea of making the platform available to other educators and edtech’s in BC. As it turns out, it wasn’t that difficult to set up, thanks to Cloudron, the administrative dashboard Grant has set up with Digital Ocean. Cloudron is an application that allows you to quickly launch and configure web applications, and one of the tools we are looking to utilize more with the OpenETC in order to launch new services.

<cue the geeking out>

Logging into Cloudron, Mastodon is one of the applications that I can one-click install.

Screenshot that shows Cloudron interface

Labelled as Unstable because it is still fairly new in Cloudron. But unstable is all the more reason to take it for a test spin before actually launching it.

Clicking the button and I am greeted with a prompt asking me what subdomain i want to install Mastodon on. In this case, I am going to use testmast.openetc.ca to denote a test instance. After a few minutes of Cloudron installing, I am greeted with a new instance of Mastodon in Cloudron, ready to log in to and administer.

Screenshot of Cloudron admin area showing Mastodon has been installed and is running
Screenshot of Cloudron admin area showing Mastodon has been installed and is running

From here I need to create a user account on the public facing Mastodon front end at testmast.openetc.ca, which looks like this:

Mastodon log in screen

User accounts take the form similar to a cross between a Twitter handle and an email address. My account name is @clint, which is a bit longer than a simple Twitter handle, but necessary because, being a federated system where others can set up Mastodon on their own domains, the domain name is needed in your Mastodon handle in order for messages to get routed to the correct user at the correct Mastodon instance. Hence why we need to have the @testmast.openetc.ca after the username, like to you need to do with an email address.

The only tricky bit I had in creating an account was getting the account verification email as it was redirected to my spam folder. But once I found it there, setting up the first user account on the instance was easy.

One the user account is created, I need to elevate that account to be the site administrator. To do this, I actually need to get into the terminal and run a command.

Screenshot of command line that needs to be run in a terminal to elevate my account from user to administrator
Screenshot of command line that needs to be run in a terminal to elevate my account from user to administrator

Where <username> is replaced by my username on the system. This is the only time I need to get into the terminal, which can be intimidating. Fortunately, Cloudron as a built in Web Terminal Interface that takes the challenge of connecting at the terminal level easy.

Screenshot of Cloudron appliation administration area for Mastodon
Screenshot of Cloudron application administration area for Mastodon

I click on Terminal and a web-based terminal editor opens up.

Screenshot of terminal window in Cloudron
Screenshot of terminal window in Cloudron

I copy and past the command to elevate my account to a Mastodon administrator account and log out of the terminal after the command runs.

Then I log back into Mastodon and can see that I now have access to the administrative section of Mastodon under my user preferences.

Screenshot of administrative section of Mastodon under user preferences
Screenshot of administrative section of Mastodon under user preferences

The server is now set up and running and available for testing by the OpenETC community.

The one thing I noticed right away was how quickly our test instance gets connected to other Mastodon instances in the fediverse. It wasn’t too long before I was seeing follow requests from users from other Mastodon instances on my @clint account. Additionally, I could follow my own @clint account from my @clintlalonde account. There was no additional administrative configuration needed on my end to make that connection happen. Which is great as I thought it might be tricky to get connected to users on other instances, but that isn’t the case.

Right now I have a few users from the OpenETC community who are creating accounts and logging in. I am moderating all requests for now just so that I can get a better sense of how this thing works, so am limiting the number of users I am inviting in to make accounts and test out the features. I am going to start peeking around the admin interface a bit more to see what options I want to set as defaults for the system, and how I can control the flow of information to and from other federated instances of Mastodon. I am sure there are ways in which an administrator can moderate and control the federation capabilities. But for now, this was a good start to a new project that will hopefully put a powerful Twitter alternative in the hands of OpenETC users in the near future.

Theme by Anders Norén