A step-by-step guide to self-hosting the Gotify notification service using Docker and PostgreSQL.
@blackbarn@lemm.ee
link
fedilink
English
123d

Been using this for a long time. Very reliable. Though postgres may be overkill for most. Default install uses sqlite.

I’ve got maybe 20 or so apps set up for various services and things. Quite useful!

Magnus
creator
link
fedilink
English
221d

I guess I’ve just experienced too many times the pain of a sqlite database getting corrupted.

@vext01@lemmy.sdf.org
link
fedilink
English
324d

Interesting. Can you send messages with the web UI?

Magnus
creator
link
fedilink
English
124d

Think of it more like a push notification server than a messaging platform. You would need a service that sends push notifications to Gotify topics. I get the sense that under the covers it works a lot like MQTT where you have apps publishing messages to topics, and you have consumers (in my case, iGotify app on iOS) that pull those messages off the topic and present them to the user as push notifications.

Though… I think I need a better iOS client than iGotify. It’s not actually giving me any push notifications so it’s missing the whole point for me.

@ikidd@lemmy.world
link
fedilink
English
124d

Probably something here that you can use like that:

https://github.com/gotify/contrib

@peregus@lemmy.world
link
fedilink
English
624d

How does it compare to NTFY?

JustEnoughDucks
link
fedilink
English
5
edit-2
23d

Different philosophy.

Ntfy uses pub-sub like MQTT. It publishes messages and anyone (with access) can subscribe to it. Want to connect 250 clients across 50 people to have the same messages delivered? Easy.

Gotify uses end to end messaging. A user creates an application on their chosen client. Gotify uses a REST api send the notification pulled from the chosen app to the user who made it. Want to do the same as above? You have to set it up 250 times. Gotify was the first to have authentication and some people say it is more robust, but I can’t speak on that. Also gotify is easier to set up and makes sense for a single user.

Someone can correct me if I am wrong, but that is the biggest architectural difference.

@peregus@lemmy.world
link
fedilink
English
122d

Thanks you very much for your explanation!

@beeng@discuss.tchncs.de
link
fedilink
English
124d

What sort of notifications is this aimed at?

Synestine
link
fedilink
English
123d

It is designed for one user, multi-channel push notifications. Like Firebase Messaging but self-hosted. You can use Markdown when composing the messages and do about whatever you want.

Magnus
creator
link
fedilink
English
224d

It’s got an open API so really there’s a lot more than my own use case.

I’m using it right now for getting notifications from flows in ActivePieces (I don’t want to get spammy with my site, which is the link in the original post, but there’s a how-to on getting that up and running also… ActivePieces is like a self-hosted Zapier)

For anything. You can get a push notification for anything you can make run a script or send an http request.

@vividspecter@lemm.ee
link
fedilink
English
223d

I use it with apprise and mailrise (email interface over apprise) typically. Apprise is basically a generic notification sender that can send push notifications to a bunch of different clients, including gotify.

So, things like Proxmox errors get set to a fake mailrise address -> apprise -> gotify. And a lot of Linux apps in general (especially older ones) only support email notifications, so this is quite useful. You can also use apprise directly, even as a commandline interface. So you can make scripts to notify you of problems in cases where there isn’t already proper logging and notification support.

And I’ve setup diun to give me notifications for docker version updates. In this case, diun sends notifications to gotify directly.

Create a post

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:

  1. Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it’s not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

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

Questions? DM the mods!

  • 1 user online
  • 137 users / day
  • 560 users / week
  • 1.4K users / month
  • 3.89K users / 6 months
  • 1 subscriber
  • 4.17K Posts
  • 86.7K Comments
  • Modlog