Skip to main content

On-Premises Installation

This guide covers downloading the deployment package, configuring environment variables, installing Docker, and starting the Authnull On-Premises stack.

Step 1: Download the Package​

Download the deployment package from the AuthNull GitHub repository onprem-public, or retrieve the zip file authnull-onprem-v1.0.0.zip attached to the onboarding email.

If you download it locally first, transfer it to the server using the scp command.

Install unzip and extract the package​

sudo apt-get install -y unzip
unzip authnull-onprem.zip

After extraction, the package contains the docker-compose.yaml, nginx.conf, and db-init files used in the steps below.

Extracted package contents

Step 2: Configure Environment Variables​

Before running Docker Compose, update the following values in the .env file to match the customer's domain and server:

ORG_NAME=customer-org-name
DOMAIN_URL=default.customer-org-name.customer-domain.com
SYSTEM_URL=https://onprem.customer-domain.com
SYSTEM_IP=SERVER_PUBLIC_IP

DB_HOST=
DB_PORT=
DB_USER=
DB_PASSWORD=
DB_NAME=

POSTGRES_HOST=
POSTGRES_PORT=
POSTGRES_DB=
POSTGRES_USER=
POSTGRES_PASSWORD=

REDIS_HOST=
REDIS_PORT=
REDIS_PASSWORD=

SMTP_HOST=
SMTP_PORT=
SMTP_USER=
SMTP_PASSWORD=
note

SYSTEM_IP is this VM's public IP address. Make a note of the ORG_NAME and DOMAIN_URL values - they must match the organization you create in Organization and Tenant Setup.

Step 3: Install Docker and Docker Compose​

Connect to the server over SSH, then install Docker and Docker Compose. All commands below are run on the server.

1. Update the package index​

sudo apt-get update && sudo apt-get upgrade -y

2. Install prerequisite packages​

sudo apt-get install -y ca-certificates curl

3. Add Docker's official GPG key​

sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

4. Add the Docker repository to APT sources​

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

5. Update APT again​

sudo apt-get update

6. Install Docker Engine, CLI, and Compose plugin​

sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

7. Start and enable the Docker service​

sudo systemctl start docker
sudo systemctl enable docker
sudo systemctl status docker

8. Allow your user to run Docker without sudo​

sudo usermod -aG docker $USER
newgrp docker

9. Verify the installation​

docker --version
docker compose version

Step 4: Start Authnull On-Premises Containers​

Change into the directory that contains docker-compose.yaml and the .env file you edited in Step 2, then start the stack:

docker compose up -d

Step 5: Verify Container Status​

docker compose ps

All containers should show the status Up.

Next Steps​

Continue to Domain and SSL Configuration to point your domain at the server and enable HTTPS.