Initial Setup
Getting Started

Initial Setup

Create the first admin account, enter your license key, and add your first upstream registry.

Using an AI assistant? Give it this file.

/llms.md is a single Markdown file covering installation, configuration, quickstart, clients, upstreams, permissions, TLS, and production deployment. Copy it and paste it into your AI chat, or tell the AI to fetch https://drevnix.tech/llms.md.

Initial Setup

After starting Drevnix for the first time, complete these steps before issuing client credentials to anyone.

Step 0: Have your license key ready

You will need a valid license key before you can use Drevnix. If you don’t have one yet, get it at drevnix.tech/get-license before continuing. The key is entered in the portal immediately after you log in for the first time.

Step 1: Create the first admin account

Drevnix ships with no accounts. There are two ways to create the first admin:

Option A — environment variables (recommended for scripted or automated setups):

Set DREVNIX_INITIAL_ADMIN_USERNAME and DREVNIX_INITIAL_ADMIN_PASSWORD when starting the container. Drevnix creates the account on first startup and ignores these variables on all subsequent starts.

-e DREVNIX_INITIAL_ADMIN_USERNAME=admin \
-e DREVNIX_INITIAL_ADMIN_PASSWORD=a-strong-password

Option B — interactive CLI (fine for manual installs):

docker exec -it drevnix java -jar /opt/drevnix.jar init-admin --config=/etc/drevnix/config.edn

The command prompts for a username and password, creates the account, and exits.

Both options produce the same result. This is only for bootstrapping — all subsequent users are managed through the portal.

Step 2: Log into the portal and activate your license

Open the portal at http://your-host:8001 and sign in with the credentials you just created.

Keep the portal (:8001) and REST API (:8002) ports internal or behind a VPN. Only the proxy port (:8000) needs to be reachable by Docker clients.

The first thing to do after logging in is activate your license:

  1. Go to Settings in the left sidebar
  2. Paste your license key into the License field
  3. Click Save

The license takes effect immediately. No restart required. The Settings page shows which features are enabled and any usage limits.

See Licensing for a full breakdown of what each license tier controls.

Step 3: Add your first upstream

An upstream is a registry that Drevnix proxies requests to.

  1. Go to Upstreams → Add Upstream
  2. Fill in the ID (short slug used in pull URLs, e.g. ghcr), URL, and optional credentials
  3. Click Save

Drevnix encrypts the upstream credentials with AES256-GCM immediately. The password is never stored in plaintext and is never returned by the API after creation.

Common upstreams

RegistryURL
GitHub Container Registryhttps://ghcr.io
Docker Hubhttps://registry-1.docker.io
Amazon ECRhttps://<account>.dkr.ecr.<region>.amazonaws.com
Google Artifact Registryhttps://<region>-docker.pkg.dev
Azure Container Registryhttps://<name>.azurecr.io

Step 4: Create a client and assign permissions

Before any Docker client can pull through the proxy, it needs a client identity and at least one permission granting access to a repository pattern.

Follow the Quick Start Tutorial for a complete end-to-end example, or see Managing Clients and Managing Permissions.