# GeoIntel Unraid template GeoIntel is a multi-container Docker Compose stack: - `db`: PostGIS 16 / PostGIS 3.4 - `backend`: FastAPI/GIS runtime - `frontend`: nginx-served React app with `/api` and `/health` proxying to the backend The normal browser entrypoint is: ```text http://:${GEOINTEL_FRONTEND_PORT} ``` ## Files - `geointel.env.example`: copy this to the repository checkout as `.env`. - `geointel-unraid-template.xml`: Unraid/DockerMan-style metadata for the editable settings. - `geointel-icon.svg`: icon source for template/app metadata. The frontend also serves the same icon at: ```text http://:${GEOINTEL_FRONTEND_PORT}/geointel-icon.svg ``` ## First setup on Unraid From the Unraid shell: ```bash cd /mnt/user/appdata git clone gitea-widefrog:NuklearRabbit/geointel.git geointel cd /mnt/user/appdata/geointel cp deploy/unraid/geointel.env.example .env ``` Edit `.env` before starting the stack: ```bash nano .env ``` Common values: ```env GEOINTEL_FRONTEND_PORT=1202 GEOINTEL_BACKEND_PORT=8000 GEOINTEL_STORAGE_PATH=/mnt/user/appdata/geointel/storage GEOINTEL_POSTGRES_PASSWORD=change-me-before-shared-use GEOINTEL_CORS_ORIGINS=http://localhost:1202,http://127.0.0.1:1202,http://192.168.10.150:1202 ``` Start or rebuild: ```bash docker compose config docker compose up -d --build ``` Validate: ```bash bash scripts/live_migration_smoke.sh bash scripts/verify_browser_runtime.sh "http://192.168.10.150:${GEOINTEL_FRONTEND_PORT:-1202}" ``` ## Change ports Change the web UI port: ```env GEOINTEL_FRONTEND_PORT=1203 ``` If you expose a different web port, also update CORS origins: ```env GEOINTEL_CORS_ORIGINS=http://localhost:1203,http://127.0.0.1:1203,http://192.168.10.150:1203 ``` Apply: ```bash docker compose up -d --build ``` The database port is intentionally not published to the LAN. The backend reaches it through the internal Compose service name `db`. ## Update from Gitea ```bash cd /mnt/user/appdata/geointel git fetch origin main git reset --hard origin/main docker compose up -d --build bash scripts/live_migration_smoke.sh ``` ## Cleanup notes Safe cache cleanup if Docker build cache fills the Unraid Docker image: ```bash docker builder prune -af ``` Avoid broad volume pruning unless you explicitly intend to remove persisted PostGIS data or GeoIntel artifacts.