this post was submitted on 29 Apr 2024
23 points (100.0% liked)

Selfhosted

60789 readers
258 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS
 

I am used to simple things running on Docker (Jellyfin, Nextcloud, etc.) I am looking at running my own personal Mastodon instance (maybe share it with a few friends and family), but I like using Docker. Looking at install guides, the steps required seem to be much harder than just editing docker-compose.yml and running the container. Is it actually that difficult to set up Mastodon, or is there a better guide? I can't just use Yunohost/CasaOS because I am using a VPS to host this.

all 17 comments
sorted by: hot top controversial new old
[–] mbirth@lemmy.mbirth.uk 18 points 2 years ago* (last edited 2 years ago)

Instead of the full-blown Mastodon, you should also look at #GoToSocial which is compatible and pretty light-weight. (Doesn’t come with a web UI, so you need to use client apps.)

EDIT: Here's my docker-compose file.

[–] terminal@lemmy.ml 4 points 2 years ago (1 children)

I found dealing with a mastodon server to be a pain in the ass. For a time I outsourced that to Masto.host and it was smooth. The owner of that site was really helpful and knew mastodon well

[–] terminal@lemmy.ml 1 points 2 years ago

Sorry about the multiple replies with the same content. My client app apparently decided to have a problem.

[–] sfunk1x@lemmy.world 4 points 2 years ago* (last edited 2 years ago) (1 children)

I'm running the mastodon stack in docker via a compose file. It was straight forward. Follow the instructions to the letter and it will work.

I will say that it is in your best interest to have an automated update process happen, either manually (via cron) multiple times a day or have some kind of orchestration layer that manages updating the component images once they are released. Mastodon has had some nasty 0 day bugs that involved account and server takeover that had to be fixed immediately, and you don't want to lag very far behind in those cases.

Edit:

Docker compose from their repo:

https://github.com/mastodon/mastodon/blob/main/docker-compose.yml

[–] Fisch@discuss.tchncs.de 4 points 2 years ago

There's a project called Watchtower that is specifically for auto-updating docker-compose containers

[–] breadsmasher@lemmy.world 1 points 2 years ago (1 children)
[–] tester1121@lemmy.world 2 points 2 years ago (1 children)

Is it a run and just works docker compose file?

[–] breadsmasher@lemmy.world 2 points 2 years ago* (last edited 2 years ago) (1 children)

You will need to review all the required variables and configure as you require. But basically, yeah

EDIT - NO

its not just grab and run. From the docs,

This container requires separate postgres and redis instances to run.

[–] bg10k@lemmy.dbzer0.com 1 points 2 years ago* (last edited 2 years ago)

I run a mastodon instance in docker and a Sharkey instance in docker on another server. I, personally, didn't find it especially temperamental but, to be fair, I have pretty extensive experience troubleshooting Docker issues re: networking/permissions/volumes because I am cataclysmically unclever.

Some advice: I would definitely recommend against running it on a naked domain you care about (i.e. instance.com). Always deploy it on a subdomain (i.e. mastodon.instance.com) because, if you ever change servers, have to re-make your intance, have domain issues, etc, you will be fucked pretty much forever on that domain. On a subdomain, you can just use a different subdomain.