Deploy sentinel
Deploy and Host sentinel with Railway
sentinel
Just deployed
/data
Deploy and Host sentinel on Railway
sentinel monitors your Tailscale network and emits events when peers change state (online/offline, runtime, and identity changes). It supports structured routing to sinks like stdout, webhooks, and Discord. You can run it continuously with minimal config and onboard automatically using Tailscale auth credentials.
About Hosting sentinel
Hosting sentinel on Railway is straightforward: deploy the container, provide a Tailscale auth credential, and optionally configure notification routing (for example Discord). The app keeps local state, joins your tailnet, polls or streams network state, detects changes, and sends notifications. For Railway templates, keep required variables minimal and mark sensitive values as secrets. Most other settings can stay unset and use sane defaults. If you want custom routing, provide SENTINEL_NOTIFIER_SINKS and SENTINEL_NOTIFIER_ROUTES as JSON env vars. For local parity, use your compose template and the same env names.
Common Use Cases
- Alert a Discord channel when tailnet devices appear/disappear.
- Track infrastructure node churn across environments.
- Run continuous tailnet monitoring without managing your own VM.
Dependencies for sentinel Hosting
- A Tailscale tailnet and auth credential (auth key or OAuth credentials).
- An optional notification endpoint (Discord webhook or generic webhook).
Deployment Dependencies
- Railway Deployments: https://docs.railway.com/
- Railway Variables/Secrets: https://docs.railway.com/guides/variables
- Tailscale auth keys: https://tailscale.com/kb/1085/auth-keys
- Tailscale tags: https://tailscale.com/kb/1068/tags
- Discord webhooks: https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks
Implementation Details
# Required (default login mode = auth_key)
SENTINEL_TAILSCALE_AUTH_KEY=tskey-auth-...
# Optional
SENTINEL_TSNET_LOGIN_MODE=auth_key
SENTINEL_NOTIFIER_SINKS=[{"name":"stdout-debug","type":"stdout"},{"name":"discord-primary","type":"discord","url":"${SENTINEL_DISCORD_WEBHOOK_URL}"}]
SENTINEL_NOTIFIER_ROUTES=[{"event_types":["*"],"sinks":["stdout-debug","discord-primary"]}]
SENTINEL_DISCORD_WEBHOOK_URL=https://discord.com/api/webhooks/...
SENTINEL_TSNET_ADVERTISE_TAGS=["tag:sentinel"]
Why Deploy sentinel 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 sentinel 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.
Template Content
sentinel
jaxxstorm/sentinelSENTINEL_TAILSCALE_AUTH_KEY
Auth key to authenticate sentinel to your tailnet
SENTINEL_DISCORD_WEBHOOK_URL
Discord webhook URL