---
title: "Deploy slashdocs"
description: "Self-host collaborative HTML docs with comments, Postgres, and S3."
category: "CMS"
url: https://railway.com/deploy/slashdocs-1
---

# Deploy slashdocs

Self-host collaborative HTML docs with comments, Postgres, and S3.

**[Deploy slashdocs on Railway](https://railway.com/template/slashdocs-1)**

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

- **Creator:** kmaki's Projects
- **Category:** CMS

## Template content

### blob

- **Image:** versity/versitygw:v1.8.0
- **Start command:** `sh -c 'mkdir -p /data/slashdocs-documents && exec versitygw --quiet --port :9000 posix /data'`

### slashdocs

- **Image:** razorpay/slashdocs:0.3.0
- **Public domain:** Yes

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

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

## Buckets

- **slashdocs-documents**

## Documentation

# Deploy and Host Slashdocs on Railway

Slashdocs is a collaborative workspace for agentic organizations. It stores self-contained HTML documents, keeps immutable versions, and lets people review exact text with anchored comments. The embedded React interface and Go API share one container, while PostgreSQL stores metadata and Railway-hosted S3-compatible storage keeps document artifacts durable.

[![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/deploy/slashdocs-1)

## About Hosting Slashdocs on Railway

Railway runs the pinned Slashdocs Docker image alongside PostgreSQL and a private S3-compatible blob service. Railway provides managed deployments, private networking, generated HTTPS domains, persistent volumes, and simple environment-variable wiring for a compact production-style stack.

## Tech Stack

- Slashdocs 0.3.0 Go server with embedded React frontend
- PostgreSQL 18 for metadata, sessions, comments, and migrations
- VersityGW v1.8.0 for S3-compatible immutable document storage
- Railway private networking, HTTPS domains, and persistent volumes

## Why Deploy Slashdocs on Railway

Railway makes the multi-service dependencies available from one template while keeping the blob endpoint private. Deployments are reproducible from pinned Docker images, PostgreSQL data and blobs persist on volumes, and the public UI/API receives a managed HTTPS domain without source-based builds.

## Common Use Cases

- Agent-generated architecture reviews and product specifications
- Incident reports, postmortems, and QA findings
- Internal dashboards and data-analysis reports as portable HTML
- Shared review workflows with anchored comments and version history
- Remote CLI and MCP access for automated document publishing

## Deployment Notes

- The Slashdocs HTTP service listens on container port 8080 and includes `PORT=8080` for Railway routing.
- The `blob` service listens privately on port 9000 and persists `/data`; it creates the `slashdocs-documents` bucket directory at startup.
- PostgreSQL migrations run automatically with `SLASHDOCS_MIGRATE=true`.
- Configure `GOOGLE_OAUTH_CLIENT_ID` and `GOOGLE_OAUTH_CLIENT_SECRET`, then register `https://YOUR_APP_DOMAIN/v1/auth/google/callback` with Google OAuth. These credentials are required because Slashdocs has no built-in username/password login.
- Keep `SLASHDOCS_APP_ORIGIN` and `SLASHDOCS_RENDER_ORIGIN` on different hostnames. The template provisions separate app and render domains; set these variables to the generated HTTPS URLs before first production login.
- `SESSION_SECRET` and blob credentials use Railway secret generation or service references. Do not expose them publicly.

## Dependencies for Slashdocs on Railway

Slashdocs requires PostgreSQL for application state and an S3-compatible object store for immutable HTML versions. The template includes both dependencies and connects them over Railway private networking; only the Slashdocs service receives public domains.

### Deployment Dependencies

| Service | Image | Port | Volume |
|---------|-------|------|--------|
| slashdocs | razorpay/slashdocs:0.3.0 | 8080 | - |
| blob | versity/versitygw:v1.8.0 | 9000 | /data |
| Postgres | ghcr.io/railwayapp-templates/postgres-ssl:18 | 5432 | /var/lib/postgresql/data |


## 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/slashdocs-1
