Skip to content

cedev-1/Omada-SDN

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Omada SDN Controller Docker Setup

A Dockerized installation of the TP-Link Omada SDN Controller, facilitating easy deployment and management.

Table of Contents

Introduction

The Omada SDN Controller allows you to manage your TP-Link network devices centrally. This project containerizes the Omada Controller, making it easy to deploy on any system with Docker installed.

Features

  • Easy Deployment: Quickly set up the Omada Controller using Docker.
  • Persistent Storage: Data is stored persistently on your host.
  • Custom Configuration: Easily customize settings via configuration files.
  • Automated Updates: Simplify updating the controller by rebuilding the Docker image.

Prerequisites

  • Docker: Ensure Docker is installed on your system. Installation Guide
  • Docker Compose: Recommended for managing multi-container applications. Installation Guide
  • Sudo Privileges: Required for installing dependencies and managing Docker.

Installation

Using Docker Compose

  1. Clone the Repository:

    git clone https://github.com/cedev-1/omada-docker.git
    cd omada-docker
    
  2. Run Docker compose:

    docker-compose up -d

This will download the necessary images, build the container, and start the Omada Controller.

  1. Access the Omada Controller Web Interface:

    After running the container, you can access the Omada Controller's web interface at:

Using Docker CLI

  1. Clone the Repository:

    git clone https://github.com/cedev-1/omada-docker.git
    cd omada-docker
  2. Build the Docker Image:

    docker build -t omada-controller .
  3. Run the Docker Image:

     docker run -d --name omada-controller \
     -p 8088:8088 \
     -p 8043:8043 \
     -v $(pwd)/data:/opt/tplink/EAPController/data \
     -v $(pwd)/config:/opt/tplink/EAPController/conf \
     omada-controller

This will build and run the container, making the Omada Controller accessible at the same URLs as with Docker Compose.

Configuration

The Omada Controller's configuration can be customized through the config/omada.properties file in the repository. This allows you to change ports, data directories, and other settings. Example Configuration (config/omada.properties):

'''bash
# HTTP Port
http.port=8088

# HTTPS Port
https.port=8043

# MongoDB Configuration
mongodb.host=localhost
mongodb.port=27017
mongodb.username=omada
mongodb.password=omada-password

# Data Directory
data.dir=/opt/tplink/EAPController/data

# Java Options
JAVA_OPTS=-Xms512m -Xmx1024m
'''

Edit this file as needed before starting the container.

Usage

Starting the container

  • Using Docker Compose:

    docker-compose start
  • Using Docker CLI:

    docker start omada-controller

Stopping the container

  • Using Docker Compose:

    docker-compose stop
  • Using Docker CLI:

    docker stop omada-controller

Rebuilding the container

  • Using Docker Compose:

    docker-compose build
  • Using Docker CLI:

    docker build -t omada-controller .

Troubleshooting

  • Ports are already in use: Make sure ports 8088 and 8043 are not being used by other services on your system.

  • Data not persistent: Ensure the volumes are correctly mounted. The data directory should persist even after stopping the container.

  • Controller won't start: Check the logs for detailed error messages:

    docker logs omada-controller

License

This project is licensed under the MIT License. See the LICENSE file for more information.

About

Omada Software Controller on Docker

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published