Skip to content
Installation

Getting it running

Nexview runs on anything that runs Docker, a Synology, a Raspberry Pi, an ordinary computer. One container, one data directory, then the wizard handles the rest.

Install

One container, three steps

Interface and API come from the same image. Take the compose snippet, start it, set it up.

docker-compose.yml
services:
  nexview:
    image: ghcr.io/derkezorm/nexview:latest
    container_name: nexview
    restart: unless-stopped
    ports:
      - "5173:8000"
    volumes:
      - ./data:/data
    environment:
      PUID: 1000
      PGID: 1000
      TZ: Europe/Berlin

Without a TMDB key Nexview starts with sample data, so you can look first and decide after. Database, keys and profile pictures live in the ./data folder next to the compose file. If you run with network_mode: host there is no port mapping, then NEXVIEW_PORT sets what Nexview listens on; otherwise it stays 8000.

Behind a reverse proxy: after several wrong passwords Nexview slows the next attempt down, and after ten it closes the door for fifteen minutes, the lock opens again by itself. Counting per account always works and needs no setting. To count per address as well, set NEXVIEW_CLIENT_IP to proxy (or proxy:2 for two, say Cloudflare and then your own) and make sure the proxy passes X-Forwarded-For, Nginx Proxy Manager, Caddy and Traefik do that on their own. With no proxy the value is direct. Leave it empty if unsure: saying direct while a proxy sits in front makes every request look like it comes from the same address, one typo would then lock out the whole household.

Under a sub-path behind the reverse proxy: Nexview can live at yourdomain.com/nexview instead of its own subdomain. One line in the compose file is enough, NEXVIEW_URL_BASE=/nexview, then restart the container. Both common proxy setups work, passing the path through and stripping it; copy-paste examples for nginx, Caddy, Traefik and Nginx Proxy Manager are in the README. Important: the public address in the settings must include the sub-path, Nexview suggests it correctly and warns when it is missing; without it, links in outgoing mail lead nowhere.

Into the environment: block of your compose file
NEXVIEW_URL_BASE: /nexview
Proxy example: nginx
nginx.conf, server block
location /nexview {
    proxy_pass http://127.0.0.1:5173;
    proxy_set_header Host $host;
}
Proxy example: Caddy
Caddyfile, inside the site block
handle /nexview* {
    reverse_proxy 127.0.0.1:5173
}
Proxy example: Traefik
Labels on the Nexview container
- traefik.http.routers.nexview.rule=PathPrefix(`/nexview`)
- traefik.http.services.nexview.loadbalancer.server.port=8000
Proxy example: Nginx Proxy Manager

On your proxy host, add a Custom Location /nexview and forward it to Nexview's host and port. Nothing more needed, no advanced settings.

  1. 1 Start the container Take the compose snippet, run docker compose up -d, open the interface on port 5173.
  2. 2 Run the wizard Enter the TMDB, Radarr and Sonarr keys, pick quality profiles and target folders.
  3. 3 Bring people in By invitation with a confirmed e-mail address, or, if a Plex server is connected, straight with a Plex account. You set role, approvals, quotas and age limit as you go, and in advance for anyone who signs themselves up. Family & friends
Even shorter

On Unraid and TrueNAS, straight from the catalogue

If you run either of them, you never touch a docker-compose.yml. Nexview is in both app catalogues, search, install, done. The setup wizard takes it from there, exactly as everywhere else.

On Unraid you will find it under Community Applications. On TrueNAS it sits in the Community catalogue of apps.

Updates arrive by themselves. The Unraid template follows whichever version is published; on TrueNAS their own automation pulls each new release. Nothing to do on your side when a version appears here.

Other routes

For now Nexview comes as a Docker image. If another installation route is added it will appear right here. Whatever you would like belongs on the wish list.