Self-host

Run Nova on your
own hardware.

Nova runs in a single Docker container. Put it on your PC, a home server or your NAS, and keep every journal, rig and project in one folder you control.

NeedsDocker
Download~500 MB
Opens atlocalhost:5001
Your datanova/nova_data
Installation

Pick where Nova should run

All three paths use the same small compose file and keep your data in a folder called nova_data, so you can move between them later.

1

Install Docker Desktop

Download it from docker.com and run the installer. On Windows, keep WSL 2 enabled when asked. Start Docker Desktop and wait until it says the engine is running.

2

Create a folder and the compose file

Make a folder called nova in your home folder. Inside it, create a text file named docker-compose.yml with exactly this content:

docker-compose.yml
services:
  nova:
    image: mrantonsg/nova-dso-tracker:latest
    container_name: nova
    ports:
      - "127.0.0.1:5001:5001"
    volumes:
      - ./nova_data:/app/instance
    restart: unless-stopped
On Windows, make sure the file doesn’t end up as docker-compose.yml.txt. In Notepad, choose Save as type: All files.
3

Start Nova

Open a terminal in the nova folder (Windows: right-click the folder → Open in Terminal; Mac: Terminal, then cd ~/nova) and run:

terminal
docker compose up -d

The first start downloads about 500 MB. After that, Nova shows up under Containers in Docker Desktop, where you can start and stop it with a click.

4

Open Nova

Go to http://localhost:5001 in your browser. The first start can take up to two minutes while Nova sets up its files in nova_data.

Prefer to click instead of using the terminal?

In Docker Desktop, search for mrantonsg/nova-dso-tracker, click Pull, then Run. Open Optional settings and set:

Container name nova · Host port 5001 · Volume: host path = your nova/nova_data folder, container path /app/instance.

Don’t skip the volume. Without it your journals and settings live inside the container and are lost when you update.
After installation

Keeping Nova running

Everything below runs in your nova folder. Docker Desktop users can do the same from a terminal opened there.

UPDATE

Get the latest version

New releases arrive as a new image. Pull it and restart. Your data in nova_data stays untouched.

docker compose pull
docker compose up -d
BACKUP

Back up your data

All of Nova lives in nova_data: database, settings, uploaded images and logs. Stop Nova, copy the folder somewhere safe, start it again.

docker compose stop
cp -r nova_data nova_data_backup_$(date +%Y%m%d)
docker compose start
SETTINGS

Multi-user mode and Ask Nova

Advanced settings live in nova_data/.env. Set SINGLE_USER_MODE=False for several accounts, or add AI_PROVIDER, AI_API_KEY and AI_MODEL to use Ask Nova. AI_BASE_URL is needed for OpenAI-compatible providers and Ollama. Then restart:

docker compose restart
PORT & NETWORK

Change the port or open Nova from other devices

Edit the ports: line in docker-compose.yml, then run docker compose up -d.

"127.0.0.1:8080:5001"   # use port 8080, this computer only
"5001:5001"             # reachable from your home network

Only open it to your own network, never directly to the internet.

Coming from the Nova Launcher?

The Launcher is no longer developed, but your installation keeps working. It’s a normal compose setup in ~/nova, with your data in ~/nova/instance. To update from now on:

cd ~/nova
docker compose pull
docker compose up -d

You can delete the Launcher app itself. Nova and your data stay.

Used the old docker run guide?

If you started Nova with docker run and a ~/nova-data folder, you can switch to compose and keep everything:

docker stop nova-tracker && docker rm nova-tracker
mkdir -p ~/nova && mv ~/nova-data ~/nova/nova_data
# save docker-compose.yml into ~/nova (see step 2), then:
cd ~/nova && docker compose up -d
Troubleshooting

Common questions

Still stuck? Open an issue on GitHub with your system, how you installed Nova and the output of docker compose logs.

localhost:5001 won’t load after I started Nova.
The first start takes up to two minutes while Nova creates its database and default files. Check progress with docker compose logs -f. If it still fails, make sure no other program uses port 5001, or change the port as shown above.
The image download is stuck or very slow.
The image is about 500 MB. If nothing moves for more than ten minutes, stop with Ctrl+C and run docker compose up -d again. Docker Hub occasionally rate-limits downloads, and waiting a few minutes usually helps.
Where is my data, and is it safe during updates?
Everything lives in the nova_data folder next to your compose file. Updating replaces only the container, never that folder. To back up, copy it. To move Nova to another machine, copy the whole nova folder and run docker compose up -d there.
Can I move my data between self-hosted Nova, the web app and Nova for Mac?
Yes. Export in one version and import in the other. Your configuration (objects, locations and settings), journals and rigs come across as YAML files, and your journal photos as a zip.
How do I open Nova from my phone or another computer?
Change the port line to "5001:5001", run docker compose up -d, then open http://<computer-ip>:5001 on the other device. Keep it inside your home network. For access on the road, use a VPN like Tailscale instead of opening a port on your router.
Does it run on a Raspberry Pi?
Yes. Nova is built for 64-bit ARM, so use Raspberry Pi OS (64-bit) and follow the Linux steps. The 32-bit version is not supported. A Raspberry Pi 4 or 5 is recommended.
How do I stop or remove Nova?
docker compose stop pauses it, docker compose start resumes it. docker compose down removes the container but keeps nova_data. Delete that folder only if you really want your data gone.
Scroll to Top