ReadAIrr downloads

Public Docker image tracks for ReadAIrr.

ReadAIrr is currently distributed through public GitHub Container Registry images. Choose prod for normal installs, val for release validation, or dev for active development testing.

Recommended: production track

Use the production image for normal installs and public testing that should follow the stable release stream.

docker pull ghcr.io/readairr/app:prod

Docker and Unraid installs should update by pulling a newer image on the same track, not by using the app's inherited built-in updater.

Validation and development tracks

Use val when a build is being checked before production promotion. Use dev when you want the newest development work and can tolerate churn.

docker pull ghcr.io/readairr/app:val
docker pull ghcr.io/readairr/app:dev

Keep the app's release branch aligned with the image tag: prod, val, or dev.

Unraid template

The Unraid template points at ghcr.io/readairr/app:prod by default and exposes the release track, Web UI URL, paths, and optional Postgres connection settings.

Repository: ghcr.io/readairr/app:prod
Release Track: prod
WebUI: http://[IP]:[PORT:8787]

Switch both the repository tag and release track to val or dev when testing those streams.

Direct Docker run

For quick testing without Compose, run the container directly and map the web UI to port 8787.

docker run -d \
  --name readairr \
  -p 8787:8787 \
  -v /path/to/config:/config \
  -v /path/to/audiobooks:/audiobooks \
  -v /path/to/downloads:/downloads \
  -e Readarr__Update__Mechanism=Docker \
  -e Readarr__Update__Branch=prod \
  ghcr.io/readairr/app:prod

Use Compose for the first-party Postgres-backed deployment path.

Current install shape

First-party Docker Compose runs ReadAIrr with a same-stack Postgres container named readarr-db. Unraid is lighter: it exposes optional Postgres variables, but does not create a database container for you.

Read installation docs