Self-host ntfy
updated Jul 2026deployed & timed by usprices checked · Aug 2026Install verified on Ubuntu 26.04 · Aug 2026 · how we test
Send push notifications to your phone or desktop from any script with a simple HTTP PUT — no accounts, no cloud. A tiny Go binary that turns `curl` into a notification pipeline for your servers and cron jobs.
Key facts
CategoryPush notifications
LicenseApache-2.0
StackGo
Min RAM256 MB
Dockeryes
Difficulty
What you need
- Any VPS with at least 256 MB of RAM
- A domain you control — most self-hosted setups need HTTPS in front of them
- Under an hour if you've used Docker before
Install with Docker Compose
Save this as compose.yml and run docker compose up -d:
# ntfy — pub/sub push notifications
services:
ntfy:
image: binwiederhier/ntfy:latest
command: serve
ports: ["80:80"]
environment:
NTFY_BASE_URL: http://SERVER_IP
NTFY_BEHIND_PROXY: "true"
volumes:
- ./cache:/var/cache/ntfy
- ./etc:/etc/ntfy
restart: unless-stopped
# docker compose up -d → http://SERVER_IPHead-to-head
More self-hosted tools
Push notifications
Gotify
Go
easyRead guide →
Code hosting
Soft Serve
Go
easyRead guide →
Team chat
Mattermost
GoReactPostgreSQL
moderateRead guide →
Observability
SigNoz
GoTypeScriptClickHouse
hardRead guide →