Getting started

Installation#

Public installation artifacts remain gated until stable v2. This page documents the release contract being validated; it is not a claim that the image or repository is available today.

Requirements#

  • A Linux AMD64 or ARM64 host with Docker Engine and Docker Compose.
  • A domain name with HTTPS and a reverse proxy such as Nginx.
  • A persistent volume with enough room for member quotas and backups.
  • A Discord application you control, including bot and OAuth credentials.

Stable-v2 install shape#

When public artifacts activate, the supported workflow will be:

mkdir vtune && cd vtune
# Download compose.release.yaml and .env.example from the stable-v2 release.
cp .env.example .env
# Add Discord credentials, allowed guilds, and PUBLIC_BASE_URL.
docker compose -f compose.release.yaml pull
docker compose -f compose.release.yaml up -d
docker compose -f compose.release.yaml logs --tail=100 vtune

Pin the published image version. Do not use a floating tag for production.

Network boundary#

Bind the container to host loopback and publish only the reverse proxy. The data volume, SQLite files, media tree, and health endpoint must remain private. Uploaded media has no HTTP download route.

Before the first start#

  1. Complete Discord application setup.
  2. Copy .env.example to .env and review Configuration.
  3. Create a persistent data volume and an operator-controlled backup target.
  4. Configure TLS and reverse proxying.
  5. Start the pinned service and follow First run.