Is it that difficult to run Mastodon over Docker?
from tester1121@lemmy.world to selfhosted@lemmy.world on 29 Apr 16:45
https://lemmy.world/post/14835855

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.

#selfhosted

threaded - newest

breadsmasher@lemmy.world on 29 Apr 16:49 next collapse

If youre looking for a sample docker-compose,

docs.linuxserver.io/images/docker-mastodon/

tester1121@lemmy.world on 29 Apr 16:50 collapse

Is it a run and just works docker compose file?

breadsmasher@lemmy.world on 29 Apr 16:51 collapse

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.

TheRealCharlesEames@lemm.ee on 29 Apr 17:21 collapse

I haven’t looked, are those requirements not included in the compose?

breadsmasher@lemmy.world on 29 Apr 17:24 collapse

Unfortunately not in this example. It has the compose to spin up masto, and the variables to set to tell it where redis etc is

sfunk1x@lemmy.world on 29 Apr 17:19 next collapse

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:

github.com/mastodon/…/docker-compose.yml

Fisch@discuss.tchncs.de on 29 Apr 18:54 collapse

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

mbirth@lemmy.mbirth.uk on 29 Apr 17:48 next collapse

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.

helenslunch@feddit.nl on 29 Apr 22:44 next collapse

I can’t just use Yunohost/CasaOS because I am using a VPS to host this.

What does one have to do with the other?

tester1121@lemmy.world on 30 Apr 06:52 collapse

I just didn’t want people to suggest to me to run a different server OS, as I can’t do that (I think).

chiisana@lemmy.chiisana.net on 30 Apr 11:06 next collapse

Most providers offer some kind of OS reload and you may be able to use custom ISOs for the process. However, that doesn’t change the fact that if you don’t want to change OS (especially if you’re already using something more commonly seen in production environments like Debian), then you shouldn’t change the OS.

helenslunch@feddit.nl on 30 Apr 12:45 collapse

Neither of these are actually an OS, they’re just containers themselves.

[deleted] on 30 Apr 14:17 next collapse

.

[deleted] on 30 Apr 14:18 next collapse

.

terminal@lemmy.ml on 30 Apr 14:19 next collapse

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 on 30 Apr 14:46 collapse

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

bg10k@lemmy.dbzer0.com on 04 May 22:49 collapse

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.