QNAP NAS – How to install the Unifi Network Management Controller in Container Station

The following notes are intended to act as an aide-memoire with regards to the installation of a Unifi Network Management Controller (NMC) within QTS 4. While we are using a Docker image, our image will run through QNAP’s Container Station.

Please note, that this guide was made specifically with a QNAP QGD-1600P in mind. So, while the same basic principle should apply to your QNAP NAS. Screen shots and applications settings may not be exactly the same as those found in your model of NAS.

Issue:

In order to setup and configure a Unifi wireless access point. You will need to either purchase a Unifi Cloud Key or run the Network Management Controller software on a secondary device. This secondary device can be a computer, mobile phone or tablet.

However, as the QNAP QGD-1600P offers both Power over Ethernet (PoE) and virtualisation via either Container Station or VM Installer. We decided to save some money and use Container Station to create a Docker image of our UniFi Controller software.

The Docker image we are going to be using is called jacobalberty/unifi, and can be found on the Docker Hub website.

Resolution:

Create a folder share for Container Station

  • First open FileStation 5 and create a shared folder called Container. This will be used later to store specific elements of our Docker image, and make updating our Container easier.
  • Within the Container folder, we will need to create a sub folder called Unifi-jacob. This will be for the Unifi Controller image.

Download and install the Unifi Docker image

In order to use a Docker image on a QNAP NAS. We first need to download and install Container Station from QNAP’s App Centre. The following notes presume that you have already done this, and your NAS has been correctly configured.

  • Open the Container Station application.
  • In the Sidebar to the left of the Container Station windows, are the headings Management and Resource.
  • Under Resource select Images
  • Within Images is a button called Pull.
  • A Pull image from registry window will appear.
  • In the Registry field choose Docker Hub from the drop down menu.
  • Within Image Name type jacobalberty/unifi.
  • In Image Version choose latest.
  • Select Pull

Notes: The Docker Hub image is now downloaded from the internet to your QNAP NAS. You can monitor the downloads progress by selecting the background tasks icon.

Configure the jacobalberty/unifi image within Container Station

  • When the Docker image has downloaded to Container Station, select the + icon under Actions. This will allow us to create a new Container.
  • In Name type Unifi
  • The Command field will be pre-filled.
  • Entrypoint will also be pre-filled.
  • We set CPU Limit to 20%, however this is a setting you can adjust depending on the hardware you are using.
  • For Memory Limit to decided to use 512MB, which seems to be enough for the Unifi Controller Software to run without issue.

  • We now need to select Advanced Settings.
  • On the left side of the window we have a sidebar which contains the following headings: Environment, Network, Device and Shared Folders.
  • For the Environment settings we will leave them on their defaults.

Notes: In the jacobalberty/unifi Github, a note makes reference to running as a non-root user. This is achieved by changing the variable RUNAS_UID0 to false. However, after doing this we found that our instance of UniFi’s Management Controller would not run. So we have left RUNAS_UID0 set as true.

  • As we want the UniFi Management Controller to open under its own IP address. In Network, we need to select Bridge from the Networks Mode drop down list.
  • In User Interface we selected the Adaptor 2, which is the gateway to our NAS. However, your User Interface may be different depending on how you have configured your NAS.

  • Next select Use static IP and assign a Static IP address to your Docker image.
  • Leave Devices on their defaults
  • In Shared Folders, select the Add button above Volume from host.
  • Select Host Path and navigate to Container
  • In Volume from host select /Container/unifi-jacob
  • In Mount Point type /unifi
  • Choose Create

Notes: The Container for our Unifi Management Controller will now be created.

  • If we return to Overview, our new Docker image will be listed.
  • By selecting the Open Link icon we will be taken to the UniFi Setup Wizard. We can now setup the Unifi Controller and configure our UniFi Wireless Access Points.

Thank you for your support

Advertisement