Skip to main content
Version: Latest

Installation

This guide will walk you through installing SDN Launch Control on your server. Ensure you have read through the pre-requisites.

Are you a developer? Find out how to run the development environment here.

Backend Installation

Step 1: Clone the Repository

git clone https://github.com/Taurine-Technology/sdn-launch-control.git
cd sdn-launch-control

Step 2: Navigate to Backend Directory

cd backend/control_center

Step 3: Create Environment Configuration

cp .env.example .env

Step 4: Configure Environment Variables

Edit .env with your configuration.

Minimum required configuration:

  • SECRET_KEY: Generate using:

    python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"
  • DB_PASS: Set a secure PostgreSQL password

  • ALLOWED_HOSTS: Add your server's IP address or domain name

  • CORS_ALLOWED_ORIGINS: Add the domain name of the Django admin dashboard and the React UI.

  • TELEGRAM_API_KEY: generate a Telegram API key if you want to use the Telegram notifications feature. You can do this here.

Step 5: Start Docker Containers

docker compose up -d

This will start:

  • PostgreSQL database with TimescaleDB
  • Redis for caching and message broker
  • Django backend API
  • Celery workers for background tasks

Step 6: Verify Backend Installation

Check that the backend is running:

curl http://<SERVER_IP_ADDRESS>:8000/api/v1/

You should see a JSON response.

Frontend Installation

Step 1: Navigate to UI Directory

cd ../../ui/ui

Step 2: Create Environment Configuration

cp .example .env.local

Step 3: Configure Frontend Environment

Edit .env.local with your backend API URLs:

NEXT_PUBLIC_API_BASE_URL=http://localhost:8000/api/v1
NEXT_PUBLIC_WS_OPENFLOW=ws://localhost:8000/ws/openflow_metrics/
NEXT_PUBLIC_WS_DEVICESTATS=ws://localhost:8000/ws/device_stats/
NEXT_PUBLIC_WS_CLASIFICATIONS=ws://localhost:8000/ws/flow_updates/

*replace localhost with your server's IP address.

Step 4: Install Dependencies and Start

./setup.sh

This script will build the Docker container.

Step 5: Verify Frontend Installation

Open your browser and navigate to http://<YOUR_SERVER_IP>:3000 (replace YOUR_SERVER_IP with your server's IP address)

Access

After installation, you can access:

  • Frontend UI: http://<YOUR_SERVER_IP>:3000
  • Backend API: http://<YOUR_SERVER_IP>:8000/api/v1
  • Admin Interface: http://<YOUR_SERVER_IP>:8000/admin
  • API Documentation: http://<YOUR_SERVER_IP>:8000/api/docs

Default Credentials

If you did not change the default superuser credentials in the .env file then they are:

  • Username: admin
  • Email: admin@example.com
  • Password: admin

Next Steps