# Documents Stack

Docker Compose stack for document and knowledge-capture services on PD.

## Paperless-NGX

- URL: `https://paperless.paccoco.com` / `http://pd:8083`
- Compose service: `paperless`
- Appdata: `/mnt/docker-ssd/docker/appdata/paperless/`
- Consume folder: `/mnt/unraid/data/paperless/consume` → `/usr/src/paperless/consume`
- Database: shared Postgres on `ix-databases_shared-databases`
- Redis: shared Redis via `PAPERLESS_REDIS`

Paperless has internal-only Tika and Gotenberg sidecars for Office/OpenDocument ingestion:

- `tika` (`apache/tika`) at `http://tika:9998`, memory limit `512m`
- `gotenberg` (`gotenberg/gotenberg`) at `http://gotenberg:3000`, memory limit `256m`
- Both sidecars live only on `documents_paperless_internal` and expose no host ports.

Required Paperless Tika env keys:

```env
PAPERLESS_TIKA_ENABLED=1
PAPERLESS_TIKA_ENDPOINT=http://tika:9998
PAPERLESS_TIKA_GOTENBERG_ENDPOINT=http://gotenberg:3000
```

Supported additional ingestion types include `.docx`, `.doc`, `.pptx`, `.xlsx`, and OpenDocument formats (`.odt`, `.ods`, `.odp`) in addition to the existing PDF/image OCR path.

## Deploy

From `/mnt/docker-ssd/docker/compose/documents` on PD:

```bash
docker compose --env-file .env config
docker compose --env-file .env down && docker compose --env-file .env up -d
```

Do not restart Docker on PD; use stack-level compose commands only.
