Guide to Installing Omada Software Controller on Raspberry Pi 4
This brief post, which can hardly be called comprehensive, is my contribution to installing the Omada software controller on a Raspberry Pi 4. For Dummies. Like me.
The disclaimer is that I've only gotten it running and haven't yet migrated over my settings from the laptop that my main instance currently runs on. I also have almost no idea what I'm doing in Linux and just want things to work.
Here's what worked for me:
- Get a Raspberry Pi and just order it with an SD card pre-loaded with Raspbian. One less thing to deal with.
- Install Docker. You can Google how to install Docker on a Raspberry Pi. Not sure which website I followed but this one seems good. Not that I took the lazy approach of not setting up an account for a non-root user. https://phoenixnap.com/kb/docker-on-raspberry-pi
- Install Portainer. To deal with Docker. https://pimylifeup.com/raspberry-pi-portainer/
- Now you'll need to find the software image for the Omada controller and pull it into Docker by using Portainer. Don't get lost in the weeds of trying to use Github for this like I did. Use Portainer's onboard support for Dockerhub and pull down the same image made by the same guy. Two important points:
- By using the containerized version of the software (which is what you're doing with Docker if you're following my steps) you can avoid having to deal with Java versions and Mongo DB. This is a potential pitfall of trying to coordinate all the dependencies yourself. This guy solved that problem with a packaged solution.
- You want to pull the down image using "mbentley/omada-controller:latest-armv7l". You could use other tags but it seems that the version that will run on Raspberry Pi 4 needs to be for the armv7l architecture. Not arm64, etc.
- Now you need to use Portainer to create a Container using the image you just pulled. This is pretty straightforward if you follow the documentation.
- Now you should be able to start the container and it should run. The Omada controller is now running on your Raspberry Pi.
What I need to do next is to learn about volumes and how to store data from the software so, if the Pi shuts down, my network settings don't go with it.
Hope this saves someone a few hours...