# Running Thingport on Unraid
Thingport is a 4-container stack (Postgres, FlareSolverr, backend, frontend) that talk to
each other by container name -- the frontend's nginx config, for example, proxies `/api/*`
straight to `http://backend:8000`. Unraid's Community Applications store only installs one
container per template with no built-in way to wire multiple templates together on a shared
network, so Thingport is **not searchable in the CA app store**. Instead, install it as a
Docker Compose stack. Unraid has no Compose support of its own, so this needs a plugin.
## 1. Install the Compose Manager plugin
Apps tab -> search **Compose Manager** -> install **Compose Manager** (or **Compose Manager
Plus**). It adds a **Compose** section to the Docker tab.
## 2. Create the stack
1. Docker tab -> **Compose** -> **Add New Stack**, name it `thingport`.
2. Open the stack's compose file and paste in [`docker-compose.yml`](docker-compose.yml)
from this folder (or point the plugin's "Import from URL" at the raw GitHub URL for
that file, if it supports it).
3. Copy [`.env.example`](.env.example) into the stack's environment variables (Compose
Manager exposes an `.env` editor per stack) and fill in:
- `AUTH_SECRET` -- any random string, e.g. `openssl rand -hex 32` from a terminal
- `POSTGRES_PASSWORD` -- any password
4. **Compose Up**.
Thingport creates two appdata folders on first start:
`/mnt/user/appdata/thingport/postgres` (database) and
`/mnt/user/appdata/thingport/storage` (your imported models). Back these up like any other
appdata share.
## 3. Open it
Once all 4 containers show healthy/running, open `http://:`
(default port 80). The frontend and backend containers also get a WebUI button and the
Thingport icon in the Docker tab, via the `net.unraid.docker.*` labels already set in the
compose file. The first account you register becomes the admin account.
Then open **Administration → Overview → System Health** and click **Run full test**. Everything marked Required or
Recommended should be green; anything that isn't means part of Thingport won't work until it's fixed. See
[System Health](../../guides/system-health.md).
## Notes
- **Do not rename the `backend` service/container.** The frontend's nginx config resolves
it by that exact name over the compose network; renaming it breaks `/api/*` requests.
- Provider setup (MakerWorld / Thingiverse / MyMiniFactory credentials) works the same as any other install
-- see [`docs/PROVIDER_SETUP.md`](../../PROVIDER_SETUP.md) in the main repo.
- To pin a specific build instead of `:latest`, see the tagging note in
[`docker-compose.deploy.yml`](../../../docker-compose.deploy.yml) and set `BACKEND_IMAGE`/
`FRONTEND_IMAGE` accordingly (add those two env vars to the stack and swap the `image:`
lines to `${BACKEND_IMAGE:-...}` / `${FRONTEND_IMAGE:-...}` if you want that flexibility).