---
title: "Deploy Orbit Workspace"
description: "Self-hosted team chat, tasks, docs and MCP in one binary"
category: "Other"
url: https://railway.com/deploy/deploy-orbit-workspace
---

# Deploy Orbit Workspace

Self-hosted team chat, tasks, docs and MCP in one binary

**[Deploy Orbit Workspace on Railway](https://railway.com/template/deploy-orbit-workspace)**

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

- **Creator:** onepush
- **Category:** Other

## Template content

### orbit https://api.iconify.design/mdi/account-group-outline.svg

- **Image:** ghcr.io/onepush-dev/orbit-workspace:0.3.0
- **Public domain:** Yes

## Documentation

# Deploy and Host self hosted Orbit Workspace on Railway

Orbit Workspace runs the unmodified Orbit v0.3.0 image as one Railway service with a single volume for its SQLite data.

## About Hosting Orbit Workspace open-source software on Railway (self hosted Orbit Workspace template)

Orbit Workspace keeps your team's chat, tasks, docs and MCP server on infrastructure you control.

## Why Deploy Orbit Workspace, the self-hosted team workspace on Railway

Orbit Workspace on Railway gives a small team chat, tasks, docs and an MCP server in one service you control, with data kept on a volume you own.

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 Orbit Workspace 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.

### Railway vs Other Hosting Providers and VPS for Orbit Workspace self hosting

Self hosting Orbit Workspace means choosing where its single container and SQLite volume run, so this table compares Railway with three common options.

| Provider | What You Get with Railway | What You Get with the Other Provider |
|---|---|---|
| DigitalOcean | A one-click deploy with a public HTTPS domain and a persistent volume at /var/lib/orbit. | A Droplet you manage yourself, including the OS, firewall and reverse proxy. |
| AWS | A single service and volume set up by the template, with no networking or IAM work. | Building blocks such as EC2, EBS and load balancers, suited to teams already on AWS. |
| Hetzner | A managed deploy path that skips installing Docker and writing the setup script. | Low-cost servers where you control the host, backups and HTTPS termination. |

Either route runs the same unmodified Orbit v0.3.0 image, so the choice is how much infrastructure you want to manage.

## Common Use Cases for hosted Orbit Workspace

- **Small team chat:** A group of five to ten people can run their daily channels and direct messages on one Orbit Workspace service, so conversations stay on infrastructure you control instead of a third-party chat tool.
- **Issues and task tracking:** Engineers and designers can keep projects, statuses, labels and sub-issues in the same app as their conversations, which removes the context switching between a chat tool and a separate tracker.
- **Shared documentation:** Teams can write and edit a page tree with live collaboration and version history, keeping runbooks and meeting notes next to the tasks they relate to.
- **Agent access through MCP:** Because the built-in MCP server ships in the same Rust binary, an AI client can read and write tasks and docs over OAuth without a second service to run.
- **Lightweight single-volume hosting:** Since all state lives in SQLite on one mounted volume, a small team can run the whole workspace on a single replica and back up one directory.

## Dependencies for Orbit Workspace Docker hosted on Railway

This template runs as one service with one volume. Keep one replica, since the SQLite database sits on that single volume.

### Deployment Dependencies for Managed Orbit Workspace Service (one container with SQLite)

- **Service:** one container on port 8080 with a public domain.
- **Volume:** mounted at /var/lib/orbit, holding orbit.sqlite, attachments/ and backups/.
- **Health:** no Railway healthcheck path, on purpose. Orbit returns 400 to Railway's direct plain-HTTP probe in production, so the service uses restart policy Always, and /health/ready works through the public HTTPS domain.
- **Replicas:** keep one.
- **Variables:** two template variables, both generated or referenced.

### Implementation Details for Orbit Workspace (unmodified Orbit v0.3.0 image plus a Railway start script that prints the setup URL)

ghcr.io/onepush-dev/orbit-workspace:0.3.0 is the unmodified upstream ghcr.io/coollabsio/orbit:0.3.0 image, binary unchanged, plus su-exec and railway-start.sh.

The two template variables are:

- **ORBIT_APP_KEY:** base64 of 32 bytes. It encrypts saved secrets such as SMTP passwords, import tokens and 2FA. Keep a copy and do not change it after setup.
- **ORBIT_PUBLIC_ORIGIN:** the Railway HTTPS origin. Update it if you add a custom domain.

## How does Orbit Workspace compare against other tools

### Orbit Workspace vs the Railway template titled Orbit by Noveum (Orbit by Noveum Alternative)

- **Different software:** The existing Railway template titled Orbit by Noveum is unrelated to this listing. Orbit Workspace is the self-hosted coollabsio/orbit v0.3.0 team workspace.
- **Scope:** Orbit Workspace bundles chat, tasks, docs and a built-in MCP server in one Rust binary with SQLite on a volume.
- **Packaging:** This is independent community packaging of coollabsio/orbit v0.3.0, and it is not affiliated with or endorsed by the upstream authors.

### Orbit Workspace vs a hosted team suite (Hosted Team Suite Alternative)

- **Data location:** Orbit Workspace runs on infrastructure you control, with its database and attachments on one volume at /var/lib/orbit.
- **Operations:** You own upgrades, backups and access control, which a managed suite would handle for you.
- **Integrations:** SMTP, S3 and SSO are set by the root user in Admin, not as template variables.

### Orbit Workspace with Docker vs Railway (Docker on Railway Alternative)

- **Setup:** On Railway, the template creates one service, a public domain on port 8080 and a volume, so you build no Dockerfile yourself.
- **First run:** Copy the Initial setup URL from the orbit service Deploy Logs and open /setup?token= on the Railway domain. The token is one-time and lasts 30 minutes; restart the service to print a fresh one until setup is done.
- **Health checks:** There is no Railway healthcheck path on purpose, because in production Orbit returns 400 to Railway's direct plain-HTTP probe. The service uses restart policy Always instead, and /health/ready works through the public HTTPS domain.

### Orbit Workspace vs Railway (Railway Alternative)

- **Managed platform:** Railway runs the container, domain and volume for you, which suits a small team that does not want to operate servers.
- **Control:** A VPS gives you root access to the host, its networking and its firewall.
- **Cost model:** Railway is usage-based, so your bill follows RAM, CPU and volume size; a VPS is usually a fixed plan.

## How to use Orbit Workspace on Railway?

1. Open the orbit service Deploy Logs and copy the Initial setup URL, which contains /setup?token= and the token.
2. Open that URL on your Railway domain. The token is one-time and lasts 30 minutes.
3. If it expires, restart the orbit service to print a fresh one until setup is done.
4. Create the root account, then your first workspace.
5. Registration closes after setup, so invite your teammates.
6. SMTP, S3 and SSO are set by the root user in Admin, not as template variables.
7. Check /health/ready through the public domain. Do not add a Railway healthcheck path, since Orbit returns 400 to Railway's direct plain-HTTP probe.
8. Keep one replica, because the SQLite database and attachments live on one volume.
9. Back up /var/lib/orbit, which holds orbit.sqlite, attachments/ and backups/.

```
/var/lib/orbit/
  orbit.sqlite
  attachments/
  backups/
```

## How to self host Orbit Workspace on other VPS Services (Orbit Workspace self hosting guide)

Orbit runs as one binary with SQLite on local disk, so a single VPS with a volume is enough.

### Clone the Repository

Get the upstream source at the v0.3.0 tag, or pull the container image directly.

```bash
git clone --branch v0.3.0 https://github.com/coollabsio/orbit.git
cd orbit
```

### Install Dependencies

Install the upstream toolchain for a source build, or Docker if you prefer the container image.

```bash
docker pull ghcr.io/coollabsio/orbit:0.3.0
```

### Configure Environment Variables

Set the public origin and the app key before first start. Generate the key once and keep a copy outside the server.

```bash
export ORBIT_ENV=production
export ORBIT_PUBLIC_ORIGIN=https://your-domain
export ORBIT_APP_KEY="$(openssl rand -base64 32)"
```

### Start the Orbit Workspace Application

Start Orbit, put HTTPS in front of it with a reverse proxy, then open the setup URL printed at boot to create the root account and first workspace.

## Pricing and License of Orbit Workspace (Orbit Workspace pricing)

Orbit Workspace is free, open-source software licensed under Apache-2.0, so you can self-host it without paying for the software itself.

## Orbit Workspace hosted vs self hosted comparison (Pricing, features, costs, and more)

Orbit Workspace is free Apache-2.0 software, and the pinned v0.3.0 release does not describe a hosted plan.

### Monthly cost of self hosting Orbit Workspace on Railway

Railway bills by usage, so the monthly cost depends on the RAM, CPU, volume size and any other services you attach.

### System Requirements for Hosting Orbit Workspace on a VPS

Orbit Workspace runs as one Rust binary with a SQLite database on a local volume, so it needs a host with persistent disk and a public HTTPS origin in front of it.

## Frequently Asked Questions (FAQs)

### How do I finish setup after deploying?

Open the orbit service Deploy Logs, copy the Initial setup URL, and open the /setup?token= path with that token on your Railway domain.

### Why is there no Railway healthcheck path?

This is intentional.

### Can I add extra ORBIT_ variables?

Only add documented ORBIT_ variables. Orbit refuses to start when it finds an unknown ORBIT_ variable.

### Is this the same as Orbit by Noveum?

No. The existing Railway template titled Orbit by Noveum is unrelated software.

### What should I back up?

Back up the /var/lib/orbit volume, which holds orbit.sqlite, attachments and backups.


## Similar templates

- [Rocky Linux](https://railway.com/deploy/rocky-linux) — 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/deploy-orbit-workspace
