Skip to main content

Docker

The versioned standard image is a convenient local evaluation starting point:
Open http://127.0.0.1:8000, enter the one-time setup token from the log, and create the first administrator. This command accepts connections from the local machine only and pins v0.4.1. A production server, including one reached by the mobile app, must use HTTPS and the published image digest for the selected release. Open Settings > Archive configuration > Filing tree and compare every built-in tree, or choose Import a file for TOML/HuML and preview the named tree. Later imports merge additively rather than reset existing filing. See Filing trees. Until a filing tree is chosen, Suchi keeps only its protected System/Inbox baseline and does not show a filing Index. Filing tree is the only required archive setup step: apply a preset or import a tree, or explicitly choose and confirm Blank to build your own. Until that choice is made, Dashboard keeps Continue setup visible across navigation and browser reloads. The action opens the Filing tree section directly; visiting it does not dismiss the reminder. After setup, Dashboard guides an empty archive to Add your first document, then to review, file, or recover that first document when needed. The guide disappears once the first document is ready. All Archive Configuration sections remain available throughout. See Web app for the exact labels and lifecycle.

More than one filing archive

Start normally; no system setup or toggle is required. A taxonomy file with system = "S01" introduces systems through normal Preview/Apply. The first import can name the original archive (retaining IDs and permissions), or preserve it under a different code and create S01 separately. Later new systems initially admit only admins; grant direct members and then document permissions. Unprefixed files remain valid but cannot remove an introduced layer. Read Filing systems before importing entity-specific templates; shared admins/host/backups remain trusted.

Docker Compose

The repository includes a minimal compose.yaml:
Set PUBLIC_URL, SUCHI_PORT, or SUCHI_IMAGE in .env before starting. Edit the volume and network definitions when integrating an existing reverse proxy or storage layout. The default host binding is 127.0.0.1; set SUCHI_BIND_ADDRESS deliberately if the proxy is on another host. Set SUCHI_IMAGE to the selected release’s published digest before production.

Direct binary

Download the binary for your platform from GitHub Releases, then run:
Production templates for systemd, Caddy, nginx, Traefik, Kubernetes, and the optional mbsync helper live under deploy/. Use one application replica because SQLite has one writer.

Image choice

  • v0.4.1 / latest is the standard Alpine image. It indexes scanned PDFs with Tesseract and includes the supported office, email, image, and archive extractors.
  • v0.4.1-full / latest-full is the full image. It adds OCRmyPDF so scanned PDF downloads can retain a searchable text layer.
The Suchi application is otherwise the same. Use the published digest for the chosen standard or full release in production. See Supported formats for exact routing, image sizes, and direct-install dependencies.

First checks

/healthz confirms the process is alive. /readyz also checks database and schema readiness. suchi doctor reports the schema, filesystem, optional tools, taxonomy, job health, and configured egress without exposing secrets. Before storing important documents, configure TLS, create a complete backup, and test a restore. Follow the upgrade and rollback checklist before changing versions. Continue with Mail intake, Configuration, Backup and restore, or Importing from Paperless-ngx.