pagepiper/docs/getting-started/installation.md

51 lines
1.3 KiB
Markdown

# Installation
Pagepiper runs as a Docker Compose stack: a FastAPI backend and a Vue 3 frontend served by nginx. No external services are required for the core BM25 search feature set.
## Prerequisites
- Docker and Docker Compose
- 1 GB disk for images, plus space for your document library
## Quick setup
```bash
git clone https://git.opensourcesolarpunk.com/Circuit-Forge/pagepiper
cd pagepiper
cp .env.example .env
./manage.sh start
```
The web UI opens at `http://localhost:8521`.
## manage.sh commands
| Command | Description |
|---------|-------------|
| `./manage.sh start` | Start all services (builds on first run) |
| `./manage.sh stop` | Stop all services |
| `./manage.sh restart` | Rebuild and restart |
| `./manage.sh status` | Show running containers |
| `./manage.sh logs [api\|web]` | Tail logs |
| `./manage.sh build` | Rebuild images without starting |
| `./manage.sh test` | Run the test suite |
| `./manage.sh open` | Open browser to the web UI |
## Mounting a document directory
To scan an entire folder of PDFs and EPUBs at startup, set `PAGEPIPER_WATCH_DIR` in your `.env`:
```bash
PAGEPIPER_WATCH_DIR=/home/you/books
```
Then use the **Scan for PDFs** button in the library to index everything in that directory.
## Updating
```bash
git pull
./manage.sh restart
```
The SQLite database persists in `data/` across rebuilds.