skip to content
Leonieke .:. Vitaulium

Finding My Way in the Fediverse

/ 2 min read

Table of Contents
cover

Fediverse Timeline

From: Birds Versus Mammuts

Running A Self Hosted Mastodon Server

As you can see from the username/instance list above, I have moved around quite a bit since I became active again in the fediverse. Previously I ran a firefish server, but with uncertain project development, I opted to go back to mastodon with all images running via S3 storage.

Setup

  • Server: 4 GB Memory / 2 Intel vCPUs / 120 GB Disk / Debian 11 x64
  • S3 Storage: DO Spaces

Via DigitalOcean, I have set up a droplet to run yunohost. Via yunohost, I have installed the mastodon application. On this droplet, I also run other applications, so it’s a shared diskspace.

Lessons Learned

Take some time to find how much you want to spend each month, because if you are not careful, the costs will grow dramatically. I expect to run my yunohost server (including mastodon) for about 40 USD/month. I need to figure out what to do with my old firefish server, because that runs for about 30 USD/month and I’d prefer to retire it, but not before I can transfer old posts to mastodon.

Tips & Tricks

  • S3 Storage working for all images:
  • After Yunohost mastodon package update, copy back in stmp and cdn information from .env.production saved as a backup file.
  • Adding/removing theme: not as easy as you might think! (via: https://www.opensourceagenda.com/projects/tangerineui-for-mastodon)
    • copy files to app/javascripts/styles/foldername (via cyberduck/sftp)
    • adjust config/locales/en.yml (via cyberduck/sftp)
    • adjust config/themes.yml (via cyberduck/sftp)
    • sudo su (to become root)
    • su - -s /bin/bash mastodon (to be come user=mastodon)
    • go to mastodon/live
    • RAILS_ENV=production bundle exec rake tmp:cache:clear
    • RAILS_ENV=production bundle exec rails assets:precompile
    • exit user=mastodon, back as root
    • sudo systemctl restart mastodon-web mastodon-sidekiq mastodon-streaming
    • sudo systemctl restart postgresql

To Do

screenshot between instances