Quick Start

Run with Docker Compose

← Admin Panel

1. Prerequisites

2. Configure environment

cd elearn/middleware
copy .env.docker.example .env

Edit .env with at minimum:

POSTGRES_PASSWORD=<strong db password>
STAGING_NELC_LRS_PASSWORD=<from NELC portal JSON>
BB_APP_KEY=<Blackboard application ID>
BB_APP_SECRET=<Blackboard secret>
ADMIN_BOOTSTRAP_PASSWORD=admin

DATABASE_URL is set automatically by docker-compose.yml to connect to the postgres service.

3. Start with Docker Compose

Windows (recommended):

.\docker-start.ps1

Or manually:

docker compose up -d --build

This starts:

Open http://localhost:8080 (or your ADMIN_PORT).

4. Sign in

Quick start credentials (first run):

FieldValue
Usernameadmin
Passwordadmin

The API token tab also accepts admin (ADMIN_TOKEN in .env). Change these before production.

5. First checks in admin UI

  1. Company Settings — verify platform key elearn.oc.edu.sa.
  2. LRS Endpoints — confirm staging endpoint, click Check All Health.
  3. ActionsTest LRS Connection.
  4. ActionsSend Validation Journey with a 10-digit National ID.
  5. Administration → Users — add operator accounts (admin only).

6. Useful commands

docker compose ps
docker compose logs -f middleware
docker compose down
docker compose up -d --build

Staging LRS returns 401?

Regenerate Staging keys in the NELC portal and paste the password exactly. See Troubleshooting.