---
title: "Deploy Gotify"
description: "Gotify 3.1 self-hosted push notification server with REST and WebSocket."
category: "Other"
url: https://railway.com/deploy/gotify-2
---

# Deploy Gotify

Gotify 3.1 self-hosted push notification server with REST and WebSocket.

**[Deploy Gotify on Railway](https://railway.com/template/gotify-2)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/gotify-2/manifest.json

- **Creator:** Agaz Self-Host
- **Category:** Other

## Template content

### gotify https://github.com/gotify.png

- **Image:** gotify/server:3.1.1
- **Health check:** /health
- **Public domain:** Yes

## Documentation

# Deploy and Host Gotify on Railway

Gotify is a simple, self-hosted server for sending and receiving push notifications. Applications, scripts and CI jobs post messages over a REST API using an app token, and clients receive them in real time over WebSocket, through the web UI, the Android app or any tool that speaks its API.

## About Hosting Gotify

This template deploys Gotify v3.1.1, the first major release with environment-only configuration, as a single service with a SQLite database on a Railway volume at `/app/data`. The admin account is `admin` with a password generated at deploy time, registration is disabled, and session cookies are marked secure because Railway serves it over HTTPS. Gotify is light, so the Hobby plan is enough and the volume only grows with stored messages and images. Log in, create an application to get a sending token, then post messages from anywhere with `curl` or any HTTP client.

## Common Use Cases

- Push alerts from cron jobs, backups, CI pipelines and monitoring to your phone
- A self-hosted replacement for Pushover-style notification services
- Real-time notifications for home-lab and self-hosted apps that support Gotify

## Dependencies for Gotify Hosting

- `gotify/server:3.1.1` (official image)
- A Railway volume at `/app/data` for the SQLite database and uploads

### Deployment Dependencies

- [Gotify documentation](https://gotify.net/docs/)
- [Gotify v3.1.1 release](https://github.com/gotify/server/releases/tag/v3.1.1)
- [Migrating to Gotify 3](https://gotify.net/docs/migrate-to-3)
- [Railway volumes](https://docs.railway.com/reference/volumes)

### Implementation Details

| Service | Image | Networking | Storage |
| --- | --- | --- | --- |
| gotify | `gotify/server:3.1.1` | public domain on 80; private IPv4/IPv6 | volume at `/app/data` |

Send a message with an application token created in the web UI:

```bash
curl "https:///message" -H "X-Gotify-Key: " \
  -F "title=Deploy finished" -F "message=main is live" -F "priority=5"
```

| Variable | Default | Purpose |
| --- | --- | --- |
| `GOTIFY_DEFAULTUSER_NAME` / `GOTIFY_DEFAULTUSER_PASS` | `admin` / generated | First admin account |
| `GOTIFY_REGISTRATION` | `false` | Keep public sign-up closed |
| `GOTIFY_SERVER_SECURECOOKIE` | `true` | Secure session cookies behind HTTPS |

Notes:

- Gotify 3 no longer reads `config.yml`; every setting is a `GOTIFY_*` environment variable. See the upstream `gotify-server.env.example` for the full list, including OIDC login.
- Application tokens are only shown once, when they are created or rotated.
- To use Postgres instead of SQLite, set `GOTIFY_DATABASE_DIALECT=postgres` and `GOTIFY_DATABASE_CONNECTION`.

This is a community-maintained deployment package and does not imply affiliation with or endorsement by the Gotify project or its maintainers.

## Why Deploy Gotify on Railway?

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying Gotify on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


## Similar templates

- [Rocky Linux](https://railway.com/deploy/rocky-linux) — Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀
- [Foundry Virtual Tabletop](https://railway.com/deploy/X5tR6G) — A Self-Hosted & Modern Roleplaying Platform
- [Letta Code Remote](https://railway.com/deploy/letta-code-remote) — Run a Letta Code agent 24/7. No inbound ports, just deploy.

Open this page in a browser: https://railway.com/deploy/gotify-2
