Skip to content

Getting started

This guide starts Docleus locally with one container, SQLite, and local file storage. It is the smallest complete deployment and is suitable for evaluation or a small self-hosted instance.

Prerequisites

  • Docker with Compose v2.
  • Git if you need to fetch the source repositories.
  • Node.js 24 or later when building the image from source.

Build the image

The 0.1.0 image is not published to a public registry yet. Build it from a development workspace that contains every repository listed in repos.yaml.

From the workspace root:

docker build -f docleus/Dockerfile -t docleus:0.1.0 .

The build installs and builds the core, the default plugins, and the distribution package. A first build can take several minutes.

Start the instance

From the docleus repository:

docker compose -f compose.small.yaml up -d
docker compose -f compose.small.yaml logs docleus

The logs contain a one-time setup token. Keep that output available for the next step.

Open http://localhost:3000/setup, enter the setup token, and create the first account. This account becomes the instance administrator.

Create the first space

  1. Select Create organization and enter a name and slug.
  2. Open Settings > Plugins for the organization.
  3. Review the enabled plugins. Organizations created through the editor start with every installed plugin enabled; turn off any you do not need.
  4. Return to the organization and create a space.
  5. Open Space settings > Plugins if the space should override any organization-level plugin choice.

The organization plugin settings are the normal starting point. Space settings can inherit the organization choice or explicitly turn a plugin on or off.

Write and publish

  1. Open a page from the page tree. Pages on main open read-only.
  2. Select Edit. With change requests enabled, Docleus creates a draft for your changes.
  3. Add and edit pages, then save the draft.
  4. Request review or merge when the workflow allows it.
  5. Open Space settings > Site, select Publish, and follow the published address.

The first publication makes the space's current main revision live. Later changes do not appear on the site until it is published again.

Production checklist

Before exposing an instance to the internet:

  • Put HTTPS in front of Docleus and set DOCLEUS_PUBLIC_URL to the editor URL.
  • Set DOCLEUS_TRUST_PROXY=true when the proxy terminates TLS.
  • Replace default passwords and keep environment secrets out of Git.
  • Back up the database and blob store.
  • Install only plugins you trust. Plugins run in-process with full instance access.
  • Read Administration and Operations.

Stop or remove the local instance

Stop the container without deleting its data:

docker compose -f compose.small.yaml stop

Remove the container and its named volume:

docker compose -f compose.small.yaml down --volumes

The second command permanently deletes the local database, files, installed plugins, and backups stored in the volume.