51 lines
1.3 KiB
Markdown
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.
|