monotux.tech

Omada

Docker, TP-link, YAML

So I recently setup new access points at my house, this time with TP-Link EAP245v3. I initially did a manual setup by logging into each AP’s web interfaces, but I spent an hour or so setting up the Omada controller in a container to make it even nicer.

Below is my docker-compose.yaml file, feel free to edit it to your taste and (ab)use it for your needs.

version: '3.4'
services:
  omada:
    container_name: omada_controller
    image: mbentley/omada-controller:4.1
    restart: unless-stopped
    networks:
      mgmtvlan:
        ipv4_address: 192.168.1.101
    volumes:
      - /path/to/omada/data:/opt/tplink/EAPController/data:z
      - /path/to/omada/work:/opt/tplink/EAPController/work:z
      - /path/to/omada/logs:/opt/tplink/EAPController/logs:z
    environment:
      - MANAGE_HTTP_PORT=8088
      - MANAGE_HTTPS_PORT=8043
      - PORTAL_HTTP_PORT=8088
      - PORTAL_HTTPS_PORT=8843
      - SHOW_SERVER_LOGS=true
      - SHOW_MONGODB_LOGS=false
      - TZ=Etc/UTC
    ports:
      - 8088:8088

networks:
  mgmtvlan:
    driver: macvlan
    driver_opts:
      parent: enp1s0
    ipam:
      config:
        - subnet: 192.168.1.0/24

As always, I ran into some issues with SELinux when running above. I’ve learned enough now to set SELinux into permissive mode, run the stuff I need, inspect what was blocked and allow it as necessary. Now it runs without issues.