2026-03-29 22:08:41 -04:00
# chromadb-admin
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
Local deployment of [chromadb-admin ](https://github.com/flanker/chromadb-admin ) — a Next.js admin UI for [ChromaDB ](https://docs.trychroma.com ), the vector database used by **ScraperControl ** for semantic search and deduplication.
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
## Services
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
| Service | Port | Description |
|---------|------|-------------|
| `chromadb` | `8000` | ChromaDB vector database |
| `chromadb-admin` | `3002` | Next.js admin UI (not currently running) |
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
## ChromaDB Configuration
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
- **Config file:** `/opt/chromadb/config.yaml`
- **Data directory:** `/opt/chromadb/data` (bind-mounted)
- **Persistence:** Enabled (`IS_PERSISTENT=TRUE` )
- **Telemetry:** Disabled (`ANONYMIZED_TELEMETRY=FALSE` )
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
## ScraperControl Collections
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
ScraperControl uses 5 ChromaDB collections:
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
| Collection | Purpose | Document format |
|------------|---------|-----------------|
| `church_identity` | Church deduplication | `{name} {address} {city} {country}` |
| `search_results` | FreeSearch result matching | `{title} {snippet} {url}` |
| `page_classification` | Content classification | Page text (first 2000 chars) |
| `schedule_sections` | Mass schedule detection | Text blocks with mass times |
| `page_snapshots` | Change detection | Full page text |
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
Embeddings are generated by **Ollama ** (`nomic-embed-text` , 274 MB) running at `http://192.168.0.241:11434` .
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
## Running
2026-03-29 22:02:22 -04:00
```bash
2026-03-29 22:08:41 -04:00
# Start ChromaDB only
docker compose up -d chromadb
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
# Start everything including admin UI
docker compose up -d
```
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
Access the admin UI at `http://192.168.0.241:3002` (when running).
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
Connect using: `http://192.168.0.241:8000`
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
## Deployment
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
Runs on `192.168.0.241` (albert-MacBookPro Linux server).
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
**Docker Compose:** `/opt/docker/chromadb/docker-compose.yml`
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
| Endpoint | URL |
|----------|-----|
| ChromaDB API | `http://192.168.0.241:8000` |
| Admin UI | `http://192.168.0.241:3002` (when running) |
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
## Upstream
2026-03-29 22:02:22 -04:00
2026-03-29 22:08:41 -04:00
This is a local deployment of the open-source [flanker/chromadb-admin ](https://github.com/flanker/chromadb-admin ) project (MIT license), with a custom `docker-compose.yml` for this server.