---
title: Install the Server
description: Run the Crumble server with Docker or Bun and create your account.
sidebar:
  order: 1
---

The Crumble server runs your bots, stores your data, and serves the web app,
all from one process.

## System Requirements

| Requirement | Supported                                                    |
| ----------- | ------------------------------------------------------------ |
| Runtime     | Docker, or Bun 1.4 or later                                  |
| Workspaces  | Optional. See [Set Up Workspaces](/self-hosting/workspaces). |

Without workspaces, bots still chat, remember, and run automations. They just
can't edit files, run commands, or use a desktop.

## Install

Pick one of the three ways below. They all end with the server listening on
`127.0.0.1:7337`.

### The Published Image

This is the quickest way to a running server:

```bash
docker run -d --name crumble --restart unless-stopped --stop-timeout 30 \
  -p 127.0.0.1:7337:7337 -v crumble:/var/lib/crumble \
  ghcr.io/crumble-project/crumble-server:0.5.0
```

All data lives in the `crumble` volume, so the container itself is disposable.
To upgrade, remove the container and run the same command with the new
version.

### Docker Compose

Build the image from a checkout:

```bash
git clone https://github.com/crumble-project/bot.git
cd bot
docker compose up -d --build
```

### Bun

Run the server straight from a checkout:

```bash
git clone https://github.com/crumble-project/bot.git
cd bot
bun install
bun run start
```

If you're working on the server itself, use `bun run dev` instead, which
restarts on every file change.

## Create Your Account

Open `http://127.0.0.1:7337` and sign up with an email address and a
password, or with a passkey alone. The first account is the server's
**admin**.

**Until an admin closes sign-up, anyone who can reach the server can create an
account.** The server listens on `127.0.0.1` by default, so only your own
machine can reach it. Before you open it to a network, close sign-up and read
[Configuration](/self-hosting/configuration).

Each account is a world of its own. Bots, chats, memories, provider sign-ins,
and workspaces in one account are invisible to every other account on the
server.

Your bots can't answer yet, because they have no model. Next,
[connect a model provider](/getting-started/providers).
