Initial resurrection kit — 81 scripts, 62 references, configs, systemd units, crons, Docker compose files, Caddy config, master README

This commit is contained in:
root
2026-07-15 17:45:36 -04:00
commit ae056eaf83
197 changed files with 26127 additions and 0 deletions
+58
View File
@@ -0,0 +1,58 @@
# Immich MCP Server — ITPP Reference
## Built: 2026-07-15
## Location
- Server: `/root/docker/immich-mcp/server.py`
- Service: `/tmp/immich-mcp.service` (pending install)
- Port: 8904
- Venv: `/opt/ops-portal/venv` (shared, contains fastmcp)
- Tools: 6 (immich_search, immich_asset_metadata, immich_map, immich_albums, immich_stats, immich_duplicates)
## Prerequisites (before deployment)
- [ ] `IMMICH_BASE_URL` in `/root/.hermes/.env` — URL of Immich server
- [ ] `IMMICH_API_KEY` in `/root/.hermes/.env` — generated in Immich → Account Settings → API Keys
## Deployment steps
```bash
cp /tmp/immich-mcp.service /etc/systemd/system/
systemctl daemon-reload
systemctl enable --now immich-mcp
# Wire into Hermes
hermes config set mcp_servers.immich.url 'http://127.0.0.1:8904/mcp'
hermes config set mcp_servers.immich.enabled 'true'
hermes mcp test immich
```
## Immich API reference
- Auth: `x-api-key` header
- Base: `{IMMICH_BASE_URL}/api`
- Key endpoints used:
- `POST /search/metadata` — search by EXIF, GPS, date, camera, city, country
- `GET /assets/{id}` — full asset info
- `GET /assets/{id}/metadata` — EXIF metadata
- `GET /assets/{id}/thumbnail` — thumbnail image
- `GET /albums` — album list
- `GET /assets/statistics` — server stats
- `GET /duplicates` — duplicate detection
## S3 storage notes (Immich server side)
- Immich stores everything locally by default (`UPLOAD_LOCATION`)
- To use S3: mount bucket with `s3fs-fuse` at the upload location
- Pros: unlimited storage, no local disk limits
- Cons: FUSE latency, slow thumbnail/transcode, DB stays local
- Better approach: local SSD + nightly backup to S3 via cron
```bash
# Backup Immich assets to S3
aws s3 sync /path/to/immich/library s3://itpropartner-backups/immich/library/ --delete
aws s3 sync /path/to/immich/upload s3://itpropartner-backups/immich/upload/ --delete
# DB dump
pg_dump immich | aws s3 cp - s3://itpropartner-backups/immich/db/daily.sql.gz
```
- Backup cadence: daily (photos don't change often enough for 15-min sync)
## Backup recommendations
- DB + library assets: daily, S3
- Full backup: weekly, separate bucket
- Test restore: monthly (spin up test Immich container, point at restored DB + library)