Skip to content

Installation

Autentico ships as a single self-contained binary with no runtime dependencies.

Download the latest release for your platform from GitHub Releases.

Terminal window
curl -L https://github.com/eugenioenko/autentico/releases/latest/download/autentico-linux-amd64 -o autentico
chmod +x autentico

Optionally move it to your $PATH:

Terminal window
sudo mv autentico /usr/local/bin/

Before starting for the first time, generate a .env file with fresh cryptographic secrets:

Terminal window
autentico init --url http://localhost:9999

This creates RSA signing keys, CSRF secrets, and token signing secrets. For production use --url https://auth.example.com. For local HTTP development add --dev to disable secure cookie flags.

Terminal window
autentico start
Terminal window
docker run -p 9999:9999 -v autentico-data:/app/data \
ghcr.io/eugenioenko/autentico:latest start --auto-setup

The --auto-setup flag generates a .env with fresh secrets on first run and reuses it on restarts. The volume at /app/data persists both the database and the generated configuration.

For a custom URL, pass it via environment variable:

Terminal window
docker run -p 9999:9999 -v autentico-data:/app/data \
-e AUTENTICO_APP_URL=https://auth.example.com \
ghcr.io/eugenioenko/autentico:latest start --auto-setup

See Docker Compose for production setups with reverse proxy and SMTP.

Requires Go 1.22+ and Node.js 22+.

Terminal window
git clone https://github.com/eugenioenko/autentico.git
cd autentico
make build

The compiled binary is at ./autentico.

Command Description
autentico init Generate a .env with fresh secrets. Use --url to set the app URL, --dev for local HTTP.
autentico start Start the server. Applies pending migrations automatically.
autentico start --auto-setup Generate .env if missing, then start. Safe to pass on every run.
autentico start --no-auto-migrate Skip automatic migrations. Server refuses to start if the schema is behind.
autentico migrate Interactively apply pending database migrations.
autentico onboard Create the first admin account headlessly (for CI/CD).
autentico onboard --enable-admin-password-grant Also seed the autentico-admin client with the password (ROPC) grant so admin-API tokens can be fetched headlessly. Also settable via AUTENTICO_ENABLE_ADMIN_PASSWORD_GRANT=true. For browser-onboarded deployments, enable the same grant afterwards from the Admin UI (Clients → autentico-admin).
autentico version Print version and exit.

Head to the Quickstart to complete onboarding and start using Autentico.