---
title: "Deploy Trace Sync Server"
description: "Tiny self-hosted sync server for Trace settings"
category: "Other"
url: https://railway.com/deploy/trace-sync-server
---

# Deploy Trace Sync Server

Tiny self-hosted sync server for Trace settings

**[Deploy Trace Sync Server on Railway](https://railway.com/template/trace-sync-server)**

- **Creator:** Arjun
- **Category:** Other
- **Total deploys:** 1

## Template content

### trace-sync-server https://trace.techulus.xyz/apple-touch-icon.png

- **Source:** arjunkomath/trace-sync-server
- **Public domain:** Yes

## Documentation

# Deploy and Host Trace Sync Server on Railway

Trace Sync Server is a tiny self-hosted sync service for Trace settings. It stores a single JSON state file on disk, exposes a small HTTP API for uploading and downloading settings, and protects access with one shared bearer token. It is designed to be simple, portable, and easy to run without accounts or a database.

## About Hosting Trace Sync Server

Hosting Trace Sync Server on Railway gives you a private settings sync endpoint backed by a persistent Railway Volume. The service runs as a single Go binary in a Docker container, listens over HTTP, and stores its state in `/data/state.json`. You provide a strong `TRACE_SYNC_TOKEN`, attach a Railway Volume at `/data`, and Trace clients use that token to read or update settings. There is no external database, account system, or web UI to maintain. For safe production use, keep the token secret and rely on Railway’s HTTPS public networking.

## Common Use Cases

- Sync Trace settings between multiple Macs or development machines
- Self-host Trace configuration without using a managed sync provider
- Keep a lightweight, private JSON settings backup with conflict detection

## Dependencies for Trace Sync Server Hosting

- A Railway service running the Trace Sync Server Docker image or source repo
- A Railway Volume mounted at `/data` for persistent `state.json` storage
- A strong shared bearer token set as `TRACE_SYNC_TOKEN`

### Deployment Dependencies

- GitHub Repository: https://github.com/arjunkomath/trace-sync-server
- GitHub Container Registry Image: `ghcr.io/arjunkomath/trace-sync-server:latest`
- Railway Volumes: https://docs.railway.com/guides/volumes

### Implementation Details

Trace Sync Server uses the following environment variables:

```env
TRACE_SYNC_TOKEN=change-this-to-a-long-random-token
TRACE_SYNC_DATA_DIR=/data
TRACE_SYNC_PORT=8787
TRACE_SYNC_MAX_BYTES=1048576
```

The Railway service should attach a Volume mounted at:

```text
/data
```

Health check endpoint:

```http
GET /health
```

Authenticated settings API:

```http
GET /v1/settings
PUT /v1/settings
Authorization: Bearer 
```

## Why Deploy Trace Sync Server 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 Trace Sync Server 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

- [Rocky Linux](https://railway.com/deploy/rocky-linux) — [Jul'26] Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀
- [Foundry Virtual Tabletop](https://railway.com/deploy/X5tR6G) — A Self-Hosted & Modern Roleplaying Platform
- [Letta Code Remote](https://railway.com/deploy/letta-code-remote) — Run a Letta Code agent 24/7. No inbound ports, just deploy.

Open this page in a browser: https://railway.com/deploy/trace-sync-server
