Get started

Docker installation

Deploy NasDash on its consistent port 2504 with persistent data and the Docker proxy.

NasDash uses port 2504 on the Docker host and 2504 inside the container. The copy-ready Compose file stores data in ./data. Do not replace that folder with a named volume on an existing installation.

Copy-ready Docker Compose

services:
  nasdash:
    image: ghcr.io/lucas-lepajollec/nasdash:latest
    ports:
      - "2504:2504"
    env_file:
      - path: .env
        required: false
    volumes:
      - ./data:/app/data
    pid: host
    depends_on:
      - docker-proxy
    extra_hosts:
      - "host.docker.internal:host-gateway"
    restart: unless-stopped

  docker-proxy:
    image: tecnativa/docker-socket-proxy:v0.5.0
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
    environment:
      CONTAINERS: 1
      IMAGES: 1
      VOLUMES: 1
      NETWORKS: 1
      INFO: 1
      POST: 1
      DELETE: 0
    restart: unless-stopped

Save this as docker-compose.yml, then run:

docker compose pull
docker compose up -d --force-recreate
docker compose ps
docker compose logs nasdash

Open http://<server-ip>:2504 from the LAN, or http://localhost:2504 on the Docker host. Configure the local Docker connection as docker-proxy:2375.

The proxy is not published on the Docker host. It grants only the listed Docker API families; DELETE=0 keeps deletions disabled. pid: host is retained because host telemetry is part of NasDash, and host.docker.internal lets NasDash reach services running directly on the host.

On first start, NasDash generates strong passwords and stable cryptographic keys, persists them with its data, and prints the initial passwords once in the logs. The optional .env is only for explicit advanced overrides; its absence does not block startup.

Existing named-volume installation

Keep nasdash-data:/app/data only if the instance already uses that named volume. Do not switch storage types during a routine image update.

Stop without deleting data

docker compose stop
docker compose down

Do not add -v during a normal stop. See Docker and proxy and Updates.