---
title: "Deploy hatamoto"
description: "Open-source CMS in one Go binary: site, admin and API on Postgres"
category: "CMS"
url: https://railway.com/deploy/hatamoto
---

# Deploy hatamoto

Open-source CMS in one Go binary: site, admin and API on Postgres

**[Deploy hatamoto on Railway](https://railway.com/template/hatamoto)**

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

- **Creator:** Zen Labs Corporation's Projects
- **Category:** CMS
- **Total deploys:** 1

## Template content

### Postgres https://devicons.railway.app/i/postgresql.svg

- **Image:** ghcr.io/railwayapp-templates/postgres-ssl:18

### hatamoto https://hatamoto.dev/favicon.ico

- **Image:** ghcr.io/zen-labs-corp/hatamoto:latest
- **Health check:** /health
- **Public domain:** Yes

## Documentation

# Deploy and Host Hatamoto on Railway

Hatamoto is an open-source CMS. One Go binary serves the website, the admin and the API, and PostgreSQL stores all content. You get a fast server-rendered site, a block editor, a media library, SEO fields, redirects, sitemaps, sandboxed WebAssembly plugins and themes, built-in backups and signed automatic updates.

## About Hosting Hatamoto

Hosting Hatamoto takes two pieces: the hatamoto container and a PostgreSQL 16 database. On first boot the container runs every database migration, generates its own server secret and prints a one-time setup link and code in the deploy logs. You open that link, enter the code and create the admin account. Uploads, secrets, backups and update releases live on a single volume mounted at /data, so they survive redeploys. A built-in supervisor installs signed updates in place and rolls back an update that fails its health check, so the service stays up without manual image bumps.

## Common Use Cases

- Company and marketing websites with pages, a blog and landing pages
- Content sites that need strong SEO: canonicals, sitemaps, structured data and redirects
- A headless CMS that serves content to another frontend through its API

## Dependencies for Hatamoto Hosting

- PostgreSQL 18 (included in this template)
- A persistent volume on /data (included in this template)

### Deployment Dependencies

- Hatamoto website and docs: https://hatamoto.dev
- Source code: https://github.com/Zen-Labs-Corp/hatamoto
- Container image: ghcr.io/zen-labs-corp/hatamoto

### Implementation Details

 Hatamoto's admin lives at a random secret address, not /admin. To find it after deploying:

1. Open the hatamoto service > Deployments > Deploy Logs and search for `Setup`. The line reads `Setup: open https://<your-domain>/<admin-path>/setup and enter code XXXX-XXXX`.
2. Open that link, enter the code and create your admin account.
3. Bookmark `https://<your-domain>/<admin-path>/`. That is your admin.

Lost the address? Install the Railway CLI and run `railway ssh`, then `hatamoto admin-url`.

Using a custom domain? Add it under Settings > Networking, then set `PUBLIC_BASE_URL` to `https://your-domain`. For email (password resets, invites), fill in the `SMTP_*` variables. Behind Cloudflare, add `HATAMOTO_TRUSTED_CDN=cloudflare`.

## Why Deploy Hatamoto 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 Hatamoto 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

- [Libredesk - Complete Setup](https://railway.com/deploy/libredesk-complete-setup) — Complete self-hosted omnichannel customer support desk.
- [Paperless-ngx](https://railway.com/deploy/paperless-ngx-3) — Paperless-ngx — document management with OCR and full-text search
- [Instatic CMS - Postgres](https://railway.com/deploy/instatic-cms-postgres) — Design, build and manage powerful static sites from state-of-the-art CMS

Open this page in a browser: https://railway.com/deploy/hatamoto
