---
title: "Deploy SillyTavern (Official Image)"
description: "SillyTavern on the official image, password-protected, chats on a volume"
category: "AI/ML"
url: https://railway.com/deploy/sillytavern-official-image
---

# Deploy SillyTavern (Official Image)

SillyTavern on the official image, password-protected, chats on a volume

**[Deploy SillyTavern (Official Image) on Railway](https://railway.com/template/sillytavern-official-image)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/sillytavern-official-image/manifest.json

- **Creator:** Dektion Studio
- **Category:** AI/ML
- **Total deploys:** 1

## Template content

### sillytavern https://raw.githubusercontent.com/SillyTavern/SillyTavern/06bde939fb1e9c4c8d8641d810f0a916b5bce127/public/img/apple-icon-144x144.png

- **Image:** ghcr.io/sillytavern/sillytavern:latest
- **Public domain:** Yes

## Documentation

# Deploy and Host SillyTavern (Official Image) on Railway

[SillyTavern](https://github.com/SillyTavern/SillyTavern) is an open-source (AGPL-3.0) chat interface for LLMs, built around characters, roleplay and long conversations. You bring the model: it connects to OpenAI, Claude, Gemini, OpenRouter, KoboldCpp, Ollama and many other APIs.

Most SillyTavern templates on Railway run a repackaged third-party image. This one runs the official `ghcr.io/sillytavern/sillytavern` image and configures it only through SillyTavern's own `SILLYTAVERN_*` variables, so there's nothing custom between you and upstream.

## About Hosting SillyTavern (Official Image)

When the deploy finishes, open `SILLYTAVERN_URL` from the Variables tab and log in. The username is `user` and the password is `SILLYTAVERN_BASICAUTHUSER_PASSWORD`, generated for your deploy. Then open the API Connections panel and add a key for the model provider you use. Keys are saved on the volume with everything else.

Before publishing I deployed it and checked that the page returns 401 without the password and the SillyTavern app with it. I then created a character through SillyTavern's own API, restarted the service, and the character was still there. On SillyTavern 1.19.0 it used 172 MB of RAM at idle, about $1.70 a month.

A detail you'd hit on your own: SillyTavern rate-limits wrong passwords, five per minute. Behind Railway's proxy every visitor arrives from the proxy's address, so by default five typos from anyone would lock you out too. The template sets `SILLYTAVERN_RATELIMITING_PREFERREALIPHEADER` so the limit applies per real visitor.

## Common Use Cases

- Your SillyTavern on every device: the same chats and characters on your phone and your laptop, without running it at home
- Chatting through a hosted API (OpenRouter, Claude, OpenAI) from a browser, with the history kept on a volume you control

## Dependencies for SillyTavern (Official Image) Hosting

An API key for at least one model provider, added in the SillyTavern UI after the deploy. The deploy itself needs no input.

### Deployment Dependencies

- Image: `ghcr.io/sillytavern/sillytavern:latest` (https://github.com/SillyTavern/SillyTavern)
- SillyTavern docs: https://docs.sillytavern.app
- Config reference for the `SILLYTAVERN_*` variables: https://docs.sillytavern.app/administration/config-yaml/

### Implementation Details

Chats, characters, settings and API keys live in `/home/node/app/data`, which is the volume. The `config.yaml` isn't on the volume, and it doesn't need to be: every setting the template changes is a Railway variable. To change another setting, add a variable named after it, for example `SILLYTAVERN_ENABLEUSERACCOUNTS=true` for SillyTavern's multi-user accounts.

The logs show a warning that the private request filter is off. It guards against server-side requests to private IP addresses when strangers can reach a server. Here only people with the password get in, and leaving the filter off lets SillyTavern reach a model server in the same Railway project over the private network.

The template runs the `latest` release tag. To stay on one version, change the image tag in the service settings, for example to `1.19.0`.

## Why Deploy SillyTavern (Official Image) on Railway?

Your chats stay in one place that every device can reach, and you don't keep a computer running for it. Hosting costs a couple of dollars a month because the model runs at your API provider, not on Railway.


## Similar templates

- [Chat Chat](https://railway.com/deploy/-WWW5r) — Chat Chat, your own unified chat and search to AI platform.
- [stella](https://railway.com/deploy/stella) — Self-host stella with web, API, Postgres, Redis, and object storage.
- [Hermes Agent | OpenClaw Alternative with Dashboard](https://railway.com/deploy/hermes-agent-or-openclaw-alternative-wit) — Self-Hosted Hermes AI Agent for Telegram, Discord & Slack

Open this page in a browser: https://railway.com/deploy/sillytavern-official-image
