as a docker container, because we can
We created an ready to deploy Unifi controller for Azure. This will install the Jacob Alberty docker build on Azure. Almost no configuration is needed. The Unifi controllers run's as a Container Instance in Azure and uses a Azure file share to store it's configuration data.
Azure provides us with multiple ways to deploy resource. Using ARM templates works best for the resources we need.
The deployment takes care of almost everything. There are still two things that need to be done by hand.
- Add your own certificates to the file share in /unifi/cert.
- Configure the controller itself. Either by restoring from an existing back-up. Or by following the wizard. That's up to you.
After the deployment is complete you need to find the containers IP.
Browse to the web interface by navigating to https://x.x.x.x:8443
And enjoy your new controller.
If you like to deploy it directly to Azure, please use the link below. This will create the storage account, docker image, an link the two together.
Sure, if you want to put a minimum amount of effort into this grab the template.json file from the azure templates directory and copy-paste the content into a new template file in Azure. Save it, and click deploy.
If you have any comments of suggestions please feel free to add them.
Please keep in mind that Azure Container Instances are not available in all regions. You need to deploy the controller to a supported region.
Jacob Alberty's Docker image for the Unifi Controller.
Microsoft Doc's page for the az container command.
Microsoft Doc's page for mounting an Azure file share inside a Container Instance.