TP-Link Omada Controller
Manage TP-Link Omada network devices.
Overview
The TP-Link Omada Controller is a centralized network management platform designed to configure, monitor, and maintain TP-Link's Omada series of business-grade networking equipment including access points, switches, and routers. Originally developed as TP-Link's answer to enterprise wireless management solutions, the Omada Controller provides a web-based interface for managing entire network infrastructures without requiring expensive licensing fees or cloud dependencies that competitors often demand.
This Docker stack deploys the Omada Controller using mbentley's containerized version, which packages the Java-based controller application with all necessary dependencies in an isolated environment. The configuration exposes multiple ports for different functions: web management interfaces on ports 8088 and 8043, device adoption and management on ports 27001-27002, and device discovery via UDP broadcasts on ports 29810-29813. The controller maintains persistent data storage for network configurations, device settings, and historical monitoring data.
Network administrators managing TP-Link Omada hardware will find this deployment particularly valuable for homelab environments, small to medium businesses, or educational institutions seeking professional network management capabilities without ongoing subscription costs. The containerized approach eliminates the complexity of manual Java application deployment while providing the flexibility to run the controller on any Docker-capable system rather than dedicated Windows or Linux installations.
Key Features
- Centralized management of TP-Link Omada access points, switches, and routers through single web interface
- Zero-touch device provisioning with automatic firmware updates and configuration deployment
- Advanced wireless features including band steering, load balancing, and seamless roaming between access points
- Network topology visualization with real-time device status monitoring and alert notifications
- Guest network management with captive portal, voucher system, and time-based access controls
- VLAN configuration and management across switches and wireless networks with inter-VLAN routing
- Detailed analytics and reporting including client usage statistics, bandwidth monitoring, and network performance metrics
- Role-based administrator access with granular permissions for different management functions
Common Use Cases
- 1Small business wireless network deployment with multiple access points requiring centralized configuration management
- 2Educational institution campus network with guest access controls and student device management
- 3Homelab enthusiasts building professional-grade networks with TP-Link Omada hardware for learning and testing
- 4Co-working spaces needing segregated networks for different tenants with bandwidth management and access controls
- 5Retail environments requiring guest WiFi with captive portals and marketing integration capabilities
- 6Remote office management where IT administrators need centralized control over distributed TP-Link network infrastructure
- 7Event venues and conference centers needing temporary network deployments with scalable access point management
Prerequisites
- Docker and Docker Compose installed with at least 2GB available RAM for controller operation
- Network ports 8043, 8088, 27001-27002, and 29810-29813 available and not blocked by firewall
- TP-Link Omada series hardware (access points, switches, or routers) connected to the same network segment
- Basic understanding of networking concepts including VLANs, DHCP, and wireless security protocols
- Administrative access to network infrastructure for initial device adoption and configuration
- Sufficient storage space for configuration backups, logs, and network monitoring data (minimum 5GB recommended)
For development & testing. Review security settings, change default credentials, and test thoroughly before production use. See Terms
docker-compose.yml
docker-compose.yml
1services: 2 omada: 3 image: mbentley/omada-controller:latest4 container_name: omada5 restart: unless-stopped6 environment: 7 TZ: UTC8 volumes: 9 - omada_data:/opt/tplink/EAPController/data10 - omada_logs:/opt/tplink/EAPController/logs11 ports: 12 - "8088:8088"13 - "8043:8043"14 - "27001:27001/udp"15 - "27002:27002"16 - "29810:29810/udp"17 - "29811:29811"18 - "29812:29812"19 - "29813:29813"2021volumes: 22 omada_data: 23 omada_logs: .env Template
.env
1# No additional config neededUsage Notes
- 1Docs: https://github.com/mbentley/docker-omada-controller
- 2Admin at https://localhost:8043 (self-signed cert)
- 3Adopt Omada APs, switches, and routers
- 4Port 27001/udp and 29810/udp for device discovery
- 5Set controller hostname for device adoption
- 6Free UniFi alternative for TP-Link networks
Quick Start
terminal
1# 1. Create the compose file2cat > docker-compose.yml << 'EOF'3services:4 omada:5 image: mbentley/omada-controller:latest6 container_name: omada7 restart: unless-stopped8 environment:9 TZ: UTC10 volumes:11 - omada_data:/opt/tplink/EAPController/data12 - omada_logs:/opt/tplink/EAPController/logs13 ports:14 - "8088:8088"15 - "8043:8043"16 - "27001:27001/udp"17 - "27002:27002"18 - "29810:29810/udp"19 - "29811:29811"20 - "29812:29812"21 - "29813:29813"2223volumes:24 omada_data:25 omada_logs:26EOF2728# 2. Create the .env file29cat > .env << 'EOF'30# No additional config needed31EOF3233# 3. Start the services34docker compose up -d3536# 4. View logs37docker compose logs -fOne-Liner
Run this command to download and set up the recipe in one step:
terminal
1curl -fsSL https://docker.recipes/api/recipes/omada-controller/run | bashTroubleshooting
- Devices not appearing in adoption list: Ensure UDP ports 27001 and 29810 are open and controller hostname/IP is reachable from device network segment
- Web interface showing certificate warnings: The controller uses self-signed certificates by default - add security exception or configure custom SSL certificates
- Controller fails to start with Java heap space errors: Increase Docker container memory limits or add Java heap size environment variables to the configuration
- Wireless clients experiencing disconnection issues: Check for conflicting DHCP servers and verify proper VLAN configuration between controller and network infrastructure
- Device adoption fails after factory reset: Verify controller inform URL is correctly configured and devices can reach controller on management ports 29811-29813
- Performance issues with large deployments: Monitor container resource usage and consider increasing CPU and memory allocations for networks with 50+ managed devices
Community Notes
Loading...
Loading notes...
Download Recipe Kit
Get all files in a ready-to-deploy package
Includes docker-compose.yml, .env template, README, and license
Ad Space
Shortcuts: C CopyF FavoriteD Download