Download DosVault

Get started with DosVault today. Multiple installation options available for different environments and technical skill levels.

DOCKER ONLY

Docker Deployment

DosVault v1.0.0 is distributed exclusively as a Docker container. This ensures consistent deployment across all platforms and simplifies dependency management.

docker run -d \
  --name dosvault \
  -p 8080:8080 \
  -p 8081:8081 \
  -v dosvault-data:/app/data \
  -v /path/to/roms:/app/data/roms:ro \
  -e DOSVAULT_ADMIN_USERNAME=admin \
  -e [email protected] \
  -e DOSVAULT_ADMIN_PASSWORD=your_secure_password \
  tty303/dosvault:latest
Setup Guide Docker Compose Support Project

System Requirements

DosVault is designed to run on minimal hardware

Minimum

  • 1 CPU core
  • 512 MB RAM
  • 100 MB disk space
  • Python 3.8+
  • Network connection

Recommended

  • 2+ CPU cores
  • 2 GB RAM
  • 1 GB+ disk space
  • SSD storage
  • Stable internet

Large Collections

  • 4+ CPU cores
  • 4 GB+ RAM
  • Fast SSD storage
  • Good network bandwidth
  • Regular backups

Docker Setup Guide

Step-by-step guide to get DosVault running with Docker

1

Install Docker and Docker Compose

Install Docker and Docker Compose on your system. Choose your operating system:

Linux

# Ubuntu/Debian
sudo apt update
sudo apt install docker.io docker-compose

# Enable and start Docker
sudo systemctl enable docker
sudo systemctl start docker

# Add user to docker group
sudo usermod -aG docker $USER

macOS

# Install Docker Desktop
# Download from docker.com/products/docker-desktop

# Or use Homebrew
brew install --cask docker

# Docker Desktop includes Docker Compose

Windows

# Install Docker Desktop
# Download from docker.com/products/docker-desktop

# Or use Chocolatey
choco install docker-desktop

# Docker Desktop includes Docker Compose
# Verify installation
docker --version
docker-compose --version
2

Create Directory Structure

Create directories for your ROMs and DosVault data. This keeps everything organized and makes backups easier.

# Create directories
mkdir -p ~/dosvault/roms
mkdir -p ~/dosvault/data
mkdir -p ~/dosvault/config
3

Configure Environment

Create a .env file with your IGDB API credentials. You'll need to register for a free Twitch developer account to get these.

# ~/dosvault/.env
IGDB_CLIENT_ID=your_twitch_client_id
IGDB_SECRET_KEY=your_twitch_secret_key
4

Run DosVault with Admin Setup

Use the docker run command to start DosVault. Include environment variables to create your initial admin user automatically.

docker run -d \
  --name dosvault \
  --restart unless-stopped \
  -p 8080:8080 \
  -p 8081:8081 \
  -v ~/dosvault/roms:/app/data/roms:ro \
  -v dosvault-data:/app/data \
  -e DOSVAULT_ADMIN_USERNAME=admin \
  -e [email protected] \
  -e DOSVAULT_ADMIN_PASSWORD=your_secure_password \
  -e IGDB_CLIENT_ID=your_twitch_client_id \
  -e IGDB_SECRET_KEY=your_twitch_secret_key \
  tty303/dosvault:latest

Access DosVault

Once the container is running, you can access DosVault by opening your web browser and navigating to http://localhost:8080. Create your first admin account and start scanning!

Docker Compose Deployment

Production-ready deployment with environment variables

services:
  dosvault:
    image: tty303/dosvault:latest
    ports:
      - "${DOSVAULT_PORT:-8080}:8080"
      - "${DOSVAULT_WEBSOCKET_PORT:-8081}:8081"
    volumes:
      - dosvault_data:/app/data
      - "${ROMS_PATH:-./roms}:/app/data/roms:ro"
    environment:
      # IGDB API Configuration
      - IGDB_CLIENT_ID=${IGDB_CLIENT_ID}
      - IGDB_SECRET_KEY=${IGDB_SECRET_KEY}
      # Application Configuration  
      - DOSFRONTEND_CONFIG_DIR=/app/data
      - DOSVAULT_ADMIN_USERNAME=${DOSVAULT_ADMIN_USERNAME:-}
      - DOSVAULT_ADMIN_EMAIL=${DOSVAULT_ADMIN_EMAIL:-}
      - DOSVAULT_ADMIN_PASSWORD=${DOSVAULT_ADMIN_PASSWORD:-}
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 40s

volumes:
  dosvault_data:
    driver: local

Create a .env file with your configuration:

# .env file
DOSVAULT_ADMIN_USERNAME=admin
[email protected]
DOSVAULT_ADMIN_PASSWORD=your_secure_password
IGDB_CLIENT_ID=your_twitch_client_id
IGDB_SECRET_KEY=your_twitch_secret_key
ROMS_PATH=/path/to/your/roms

Then run:

docker-compose up -d
-->

Need Help Getting Started?

Our community is here to help with installation and setup

Read Documentation Get Support View on GitHub